I'm pretty sure the system worked the way you're describing it at some point in the past, but somehow that changed. The issue was discovered by a developer (dividuum) who was playing around with mc4p's authentication module (which uses a random client token), but I was able to reproduce it with vanilla clients (with different client tokens).
I did some more testing and found out that it only happens when using the (optional?) agent field:
Login with first client
Login with second client
Validate second client's access token
Validate first client's access token