(apologies, this might be a bit snarky)
i hate this philosophy of yours with all my might. (ok, not really, but i do dislike it)
when i put something out there, i do it to share what i build for myself and for my own needs. i may be asking for help in general, but i won't ask for help for every specific issue unless that issue is a priority for my self and i can't fix it. time is to short to worry about every single low priority problem.
and how dare you judge someone elses effectiveness as a maintainer!
that, my friend, is quite an insult. you have no idea how effective they are. you don't live their life. you don't know what other responsibilities they have. what's next? asking that they commit a minimum number of hours each week for the project? demanding that they respond to any request within a day?
users should be free to be critical of it
absolutely not. you can say: "unfortunately, i have this problem, so i can't use this, i am going to go use something else". but that's about it.
criticism is the bane of our society. criticism hurts peoples feelings. criticism causes burnout. FOSS maintainers are volunteers and absolutely do not deserve that kind of criticism for just developing software. (that doesn't make them above any criticism. if they are rude or mean to their users, then that may well be criticized. but not if they ignore a problem or are unresponsive. they may well have other things in their life that are more important than to care about your software issue) (and if the developer is paid, direct any criticism at the company, but don't beat up the employee who may not have the freedom to choose what issues to work on)
Being open source doesn't mean nobody should dare criticise you
if you didn't pay for it, it means exactly that.