When I was a contractor I also preferred hours. If you get paid by results there is less reluctance to wasting your time. I had several situations where I told a client “you understand that you are paying me good money for sitting around and waiting for X to make a decision?”. Sometimes they were ok with it and sometimes they would accelerate things. But at least I got paid. On the other hand I did fixed price where they didn’t respond to questions which wasted my time (and money).
It is, in the end, what costs to you as a person. It is the ultimate limited resource. An hour spent doing work for a customer is an hour ticked off of your finite list of hours you'll ever have in this life.
In contrast, results are somewhat of a renewable resource.
As a contractor, I only accept per hour since this is the best result for both parties. A fixed sum for a task requires a fixed and extremely detailed spec up front which leads to worse software, since you always learn more in the process. And even then there may be ambiguities and misunderstanding which means the contractor might have to use more time than expected to satisfy the customer.