I believe there are some features already in place. For example, if your oponent doesn't make a move for half of the total game time, e.g. 2.5mins for a 5min, the game is automatically abandoned. This rule doesn't apply in live tournaments.
If, on the other hand your opponent disconnects, you are notified that they have left the chat and also "name has disconnected" is displayed in red text.
In addition, if you repeatedly abort games or disconnect from games frequently, you get a "fair-play warning", meaning you have to wait longer between games and may eventually find yourself banned.
This would be most usefull in 30 minute games. A problem that can literally stop the game play in its tracks for 10, 20, up to 30 minutes, and you have to wait through it, needless to say this is unwanted. If you are playing a rated game, once initiated after a few moves an opponent can wait and not make a move forcing you to either quit and lose, or wait. You could start another match while youre waiting under the assumption they wont move but if they do youre stuck playing two games at once. Sometimes this can occur legitatamally because of connection issues, and my suggestion would help here aswell. The suggestion to fix this is- make a button, alongside the 'draw' and 'resign' button that prompts the opponent to confirm with a timer that is, say, 5 minutes, or a percentage of their game clock that is remaining. This way, the opponent can prove thier presence without having to make a move, or enter in the chat. A website as big as chess.com should be expected to have any advantage in mechanics other than the game of chess itself, as that is what differentiates it from other competing sites. And shouldnt be that hard to program.
To prevent abuse of the button: Limit its use to once or twice per game. With a 5 min timer, that means the opponent cant try to make you quit without it being obvious, and the community can regulate itself and if they still want to try waiting they will have to check the screen 3-4 times in between. There are those that would try to use this to make a player lose if they announce in chat that they are going to be away from the monitor for more than 5 mins, say making a sandwich or something. But if you dont trust your opponent (they havent said anything to you all game etc) dont say anything and they will have to guess youre not there after 2-3 minutes, +5 for the timer = plenty of time to make a sandwich.