First of all, the project I maintain would likely lose 99% of users if we charged money. Being free (as in beer) is a large part of its appeal. And that's okay.
Secondly, the project is currently being maintained by a few people in their spare time. If you paid me, I wouldn't have any more free time, so to make it worthwhile, you would have to pay me enough so I would give up my job. And it just sounds unlikely that someone would pay so much for our project.
I really don't think Open Source needs fixing with regard to money. I like that Open Source is not about money. Not every thing has to be profitable.