This was the exact opposite, in my experience. Clients that want fixed-price contracts always have ridiculous deadlines and expected me to work 24/7. When I charge hourly, clients think very carefully before I work on something.
The 12 hour days to meet some crazy deadline also disappears pretty quickly when you are paying for all the hours. I won't even accept fixed-price contracts anymore.
Also my experience after 15 years of contracting. The fixed-bid contracts were the worst because they attempting to squeeze as much as they could for that cost. After a few of them I stopped even discussing them as an option.
If someone loses their autonomy as a contractor that's all on them, not the contract. I was always very clear that it was a B2B relationship with my clients.
Hourly rates also meant that if projects went long, or other work became avail, I would usually just continue to work on it, which can become quite lucrative. Fixed-bid contracts always gave the client a reason not to sign another contract. Time and Materials contracts meant a 3 month contract could easily turn into a 9 month contract, no new contract necessary.
I only do fix priced contracts with a lock solid list of tasks. Usually it's smaller in scope and clearly defined. I spell out that any deviations are costs outside of the original pricing.
As another poster mentioned, you very much have to be selective. A lot of time our first contract will be a fixed price with a client to show our ability to deliver, so in that instance we lose a little to gain a client. It's a balance and it's not an easy life for anyone.
Consultants can be beaten and battered on behalf of an internal team and those that are good realize that in many instances that's what you're hired for.
The advice I’ve heard in the general contractor world, is fixed bid only works if you charge appropriately, and are very quick with change orders. As soon as it looks like the scope is changing, be it a request from the client, or some new thing is exposed (often literally). I’d expect the same is necessary for software consulting.
The bigger problem I don’t hear discussed in any of these threads, is that you can only estimate jobs you’ve done before. So, to do fixed bid profitably, it really requires that you are specializing in some set of deliverables. This, actually has some interesting benefits as well, one, is that you can charge a lot more over time, and you can become very efficient as well, which leads to a high profit per effort ratio.
The 12 hour days to meet some crazy deadline also disappears pretty quickly when you are paying for all the hours. I won't even accept fixed-price contracts anymore.