Hiramholliday the problem is they make u wait out of selfishness
Not resigning

Hiramholliday the problem is they make u wait out of selfishness
In the chat, there is an option to say they were bad sports and you can block them. I believe that if a lot of people say you are a bad sport you get paired against other bad sports.

Perhaps disconnections in completely lost positions could be treated differently. I guess 'completely lost' is hard to define. For example one side could have a really hard-to-spot mate but every other move is loosing.

Guys this is excactly why people do it. If no one would care, no one would do it. Just take the win and go one. I mean if you are in a winning position then you played great. You don't need the mate and while their time is running do something else
Report them for stalling. you can get your account banned for repeated stalling.
https://support.chess.com/article/209-how-do-i-report-someone
The number of players who disconnect rather than resign is amazing. Perhaps you could introduce a system whereby if they discount when a certain number of points behind on your scoring system they lose either League points or rating points