By using a using a unique GUID for each server, you are sure that nobody around can take your GUID and go on another server with it because it's different for each server.
Of course, that doesn't stop them from spoofing your guid for that server and any others they see you on, individually.
The way guid's operate could be changed.
The client would send a string to the server, the server would remember that guid, but in /!listplayers it would only show the checksum of that guid.
This would make it nearly impossible to steal a guid, as only the server operator can see the entire guid. Everyone else just see the checksum. (It would be possible to try every guid combination untill you found the one with the checksum that a person had, but it would take a long time.)(Someone could also start a fake server just to gather guid's, but most of us don't go onto servers we don't know of, or get good ping on.)
This also has the desirable side effect of making it hard to make a fake guid that displays as ***l33t*** or some such thing.