Hating on users by calling them "leaches" for following the contract terms is caustic and harmful to the community.
If you don't want to share, don't share.
What's wrong with wanting to share, but sometimes wanting a little quid pro quo too? Are you following the absolute letter of the licensing by not doing anything in return? Yes. Are you following the intent? No, probably not. While there's no strict obligation to do anything, if you like the project and would like to see it continue, then perhaps (even for your own self-interest) you might consider doing something about it. A bug report, code contribution, small monetary contribution, etc. Hell, even a word of thanks here and there would be nice.
If you want to control the actions of people using your software, don't use a license that respects their Freedom.
If you used a license that does respect their Freedom, and then you find yourself feeling negative emotions about how they use it, stop your whining and meditate about your desire to control people to whom you promised Freedom.
Your strict interpretation of how this works reminds me of a person that wouldn't hold the door for someone. Are you legally required to hold open a door for someone? No, of course not. But that doesn't mean the person behind you won't think you're a proper prick if you let the door slam shut in their face. Of course your response would be "but I didn't have to do that for you."
Why not consider the letter of an agreement vs. the intent of an agreement? And maybe think ahead for more than 5 minutes and realize that if everyone treats FOSS developers like that, eventually there won't be any. And that will hurt you just as much as the developer.