That's kind of the weird situation with lawyer work. Hourly shit is basically outdated, but we still do it (it's what we're used to, it's what clients are used to, etc). The hourly rate is what is agreed to; no one is saying a set number of hours (thought a lawyer will usually ball park the expected total cost).
The ballpark is why I think option #3 might be the most acceptable to the majority of people. You expect to pay $X for Xservice. The contract further would explain that if things get more complicated, you pay more (duh....?).
But I think people also dont recognize the value of hiring a lawyer for a simply divorce. I'd ballpark a "simple divorce with basic assets" at $2-3k (where I am), but I've seen people with plenty of money opt to do it themselves (and then screw it all up only to lose a few hundred thousand later down the line).
I spose, though, to get lawyer fees on par with what consumers want/need, there needs to be a frick ton of PR education to the public. Lawyer fees are on par with what the market demands (otherwise people wouldn't pay them), but not everyone recognizes the value of said fees, so they do shit on their own not knowing the consequences of what they're doing.
A lot of straight forward services are done on flat fee bases. Want a contract between A and B that accomplishes X? Ideally, that should be a set fee. If the client makes it more complicated, then the cost increases, obviously. But how to increase the fee is up for discussion (hourly? flat?).