I do get paid for the project I maintain, but ONLY when I am doing something that benefits my employer. I became maintainer because my employer needed a feature that wasn't there so they paid me to write it. That makes me someone who cares enough to be maintainer (the previous maintainer didn't want to be maintainer anymore). If you submit a good patch I will accept it. Submit several good patches and I'll make you co-maintainer (so far that hasn't happened). If you ask an easy support question I'll answer. If you want a new feature or have a hard support question - my employee doesn't pay me for that and I have kids to play with on my own time.
Red Hat, Ubuntu and the like employee some people who will sometimes implement a new feature for you - but those companies want you to buy a support contact for features. There are a number of foundations that pay people to work on free software (FreeBSD, KDE, Mozilla, many more) and so they will be more responsive to requests - but foundations are always lacking in money so they cannot do every feature they want.
There are a few "college students" (possibly retired) who work on things for fun. If they take an interest in your request they will do it. However they also have other things do to as well.
I believe the majority of people working on open source projects are like me: they work on things someone pays them for but do not have the time to do anything for someone else.
Note, industry coding is like this as well. They have money, but never enough to do all ideas. (and even if they did man-month issues mean they often can't do it anyway)