Bethany and I philosophically bite the bullet on this, which is basically to just agree with your second point: the wealthy person gets their way all the time and the poor person gets what's to them a lot of money and everyone is happy.
If that's unpalatable or feels unfair then I think the principled solution is for the wealthy person to simply redress the unfairness with a lump sum payment to redistribute the wealth.
I don't think it's reasonable -- ignoring all the psychology and social intricacies, as I'm wont to do [1] -- to object both to auctions with disparate wealth and to lump sum redistribution to achieve fairness.
Now that I'm introspecting, I suppose it's the case that Bethany and I tend to seize excuses to redistribute wealth, but they have to be plausible ones.
You can't accept the money either from an auction or a lump-sum redistribution without losing status, and a roommate relationship is one where you particularly want to maintain similar status levels. If I wanted to be a live-in servant instead of a friend, I could probably find a better deal on Craigslist without sacrificing an existing friendship.
After moving in with my new roomies (Danny and Bethany of Beeminder), I discovered they have a fair and useful way of auctioning off joint decisions. It helps you figure out how much you value certain chores or activities, and it guarantees that these decisions are worked out in a fair way. They call it "yootling", and wrote more about it here.
A quick example (Note: this only works if all participants are of the types of people who consider this sort of thing a Good Idea, and not A Grotesque Parody of Caring or whatnot):
Use Case: Who Picks up the Kids from Grandma's?
D and B are both busy working, but it's time to pick up the kids from their grandparents house. They decide to yootle for it.
B bids $100 (In a regular Normal Person exchange, this would be like saying "I'm elbows deep in code right now, and don't want to break flow. I'd really rather continue working right now, but of course I'll go if it's needed.")
D bids $15 (In a regular Normal Person exchange this would be like saying "I don't mind too much, though I do have other things to do now...")
So D "wins" the bid, and B pays him $15 to go get the kids from their grandma's.
Of course.... it would be a pain in the butt to constantly be paying each other, so instead they have a 10% chance of paying 10x the amount, and a 90% chance to pay nothing, using a random number generator.
This is made easier by the fact that we have a bot to run this, but before that they would use the high-tech solution of Holding Up Fingers.