I disagree entirely with your proposition. The economics of open source are built directly into the license agreement structure of the model. When you give a user of your software free and complete permission to do whatever they wish with that software as long as they appropriately credit you (or similar terms), that is /exactly/ what you are doing.
The economics of open source are exactly what they should be, pretty piss poor. Because you don't offer something for free if you have the expectation of being paid for it. This should be basic common sense. The challenge is that the software community has created a weird social order around this that open source is somehow ethically superior to commercial software, and so many developers feel socially obligated to open source software even when they have the expectation of being paid. This is a social challenge though, not an economic one. If your software produces a significant enough ROI above it's cost, you can sell it and be economically fruitful, otherwise you can't, this is is the basic nature of any business.
Where I do agree to some extent with you is that this has a negative impact on open source contributions, because the BATNA (Best Alternative to the Negotiated Agreement) for a software developer between contributing their time and energy to open source vs working for a big tech company for $$$$ is to ditch open source if it isn't economically viable for them. That said, I think this is an extraordinarily privileged position to be in, that a lot of developers lack perspective on. The average person, even in Western economies, makes nowhere near what the average software developer makes in income, and the expectation that you can clear $100k/yr+ by giving away software for free is a bit daft and entitled in a world where the average person in "wealthy countries" makes less than half of that.
Open source partly results in innovative, creative, and valuable ideas being implemented exactly because the relationship provides no real expectations of value on either side and allows developers the freedom to experiment and throw something out there. The reward for you releasing your software to the world for free is that someone found it useful which validated your idea and your creative expression as being valuable. It is not, and should not be, a job, other than as an employee of a company maintaining said project because they rely on it in their core infrastructure and necessarily and rightly take the cost upon themselves to maintain those things which they rely on without any expectation on the original author to do so for their hobby project.