Whenever I play cs go competitive matchmaking, I try to help people by calling strats and such. The majority of players are at least willing to follow comms and be instructed on what to do.
Also, a cs:go kind of ranking would be pretty sweet and would help alleviate some problems mentioned here. You get ranked up or down based on how you perform (in total rounds won/lost) against players of similar skill to you. As I understand it there is a specific numerical ELO created by averaging the random team members individual ELOs, and winning or losing by a certain margin of rounds effects this ELO accordingly.
People who already are good at 6s or HL would very rapidly move to the top of the rankings, while fresh-out-of-pubs players would start lower and take a bit of time to rank up. Meanwhile, people would not be playing far out of their skill level.
I know that this makes valve no money, but look at cs:go. Matchmaking there also makes them no money, yet it helps drum up support for the game in general.