Suggestion for dealing with the bad apples


This already happens. It's a feature chess.com already has. If you abandon games or get reported in the chat often, you get matched with other people who abandon games or get reported in the chat often.
It's probably why I have never seen these problems people like to complain about and always get fair players and proper sportsman when I get a match in live chess.
Most people are gracious and polite.
Others are not. Abandoning losing positions rather than resigning, or being abusive in the chat.
Chess.com promises to "restrict users account", but clearly this is not effective, because the problem doesn't diminish.
So. How about looking at how many people each player has been 'blocked' by?
Then, each player could get a 'fair player' flair against their name, and you can choose whom you wish to play. Perhaps only match people together with a similar 'blocked' level.