But fees are many times also used to avoid or evade taxes and royalties. For example, resort fees can be used by hotels to avoid paying royalties to the franchisor.
There is never any good excuse to hide or gatekeep the total price from a customer though.
But there's no "bedsheets" analog for a car rental. Yes, it needs to be washed, but I imagine most renters of Priuses don't actually care if the car hasn't been washed in a few days/weeks.
That's certainly one reason. But it can also make sense to have a one-time fee that's independent of the duration of the rental. Cleaning a room is the most obvious example. But there are other more or less fixed overheads that are largely independent of the length of time something is rented.
If you're renting out just about anything, would you prefer seven 1-day rentals or a one week rental?
Consider the amount of work involved for the owner in renting one car to 30 people each for one day and one car to one person for 30 days and you'll see the difference.
Nope. The rest of this sentence doesn't even matter: if someone needs to do something, that's a reason to charge for it, but not a reason to hide the price.