I run with a teamspeak community and its not uncommon to end up queueing when we only have 3 or 4 rather than a full team. It's something we are very aware can prove to be a huge problem. Sometimes we get a great person to fill the role (and we usually allow them to choose their lane unless we have someone training in a specific lane.)
I won't say its perfect. We've had games where the odd man ends up getting reported, usually because they started to rage and then really lost it when we tried to get them to calm down. none of us like reporting someone, and we'll normally only do it if we are forced to.
Now, its not perfect. We'd prefer to have a full group, but sometimes there are only 4 members of the community available so we have to go into battle with the people who are there. It is unfortunate that you have run into bad groups, but all I can recommend is that you be polite and try your best. Most players will be quite forgiving if you don't rage or try to blame others for your struggles.
And don't play the "gg /ff at 20" game if the team is doing poorly. It's the fastest way to upset your teammates. If you aren't happy with the way the match is going, just play on and quietly call a surrender vote when it is available. Trust me, most of the time my TS group agrees that a forfeit is coming, but talking about it just builds negative emotions.