As far as I can tell, we're hard-wired to derive pleasure from independence and self-reliance, probably because it's an advantageous trait in evolutionary terms.
Many years ago, I was into vintage Volkswagens for a while. As anyone who has owned one of these beasts can tell you, they're extremely unreliable and require more or less constant maintenance to keep running, and unless you're prepared to do it yourself, you'd better have a lot of money to hand to the dwindling number of mechanics who know how to work on the damn things. I had never worked on cars before or been particular interested in doing so, but I adapted to necessity, and after a while, I got good enough at it to keep my ancient VW running most of the time.
On one hand, it was annoying to have the thing break down by the side of the road, but on the other, there was a really quite profound sense of satisfaction in being able to open the engine compartment, figure out what was wrong, fix it, and pull back into traffic. In practical terms, this was pointless, of course -- my time and money would have been better spent on buying something more reliable, which I eventually did -- but the emotional payoff surprised me with its intensity. I've heard similar sentiments come from hobbyists of all kinds, farmers, craftsmen, etc.
All that said, I'm not sure it's the main factor in OSS evangelism. The type of person who programs for fun is generally attracted to exploring complexity and mastering it, and the parallel seems to be more like what puzzle fans of all kinds get out of their hobby. When someone tries to convince someone else to use a complex (if powerful) tool over the droolproof commercial product they're currently satisfied with, it has a lot more in common with trying to turn them on to a favorite hobby than with an expression of self-reliance.