I really like this idea. Maybe if a joined user goes over a threshold latency number for a short (but not instant) period, it could initiate a "high latency state". Once in this state, it will try to have either the users client ping a server or two in a potentially more equitable region (like you did manually). That, or maybe from a server end it could try a ping to their clients. Not sure what would be best from an architectural, or especially security standpoint.
For a self hosting perspective, we'll have to see how v2 handles things.
Thread
Comment by @burn2theground