Do you know this for certain? The client logs will tell you how often automatic relay selection is performed, and which relay the client chooses. I would verify that your assumption is true by spot-checking the logs on a couple of machines.
dmccalla is correct in that when clients have automatic selection enabled the agent will by default perform a relay selection at an interval equal to the _BESClient_RelaySelect_IntervalSeconds client setting (default; 6 hours).
You can find useful information about client settings here.
Interestingly, I just noticed that there is a client setting called _BESClient_RelaySelect_Always_OnIPListChange. This is described as:
"If a client is temporarily on a sub-network from where it cannot register to the desired relay, the client registers with the root server. By default an auto relay selection is not triggered even if, later on, the client IP situation changes and the client can communicate again with the desired relay. This means that the client will continue to be registered with the root server until a new explicit relay selection occurs.
You can assign the value 1 to this configuration setting to change the default behavior and trigger automatically a new relay selection when the IPList addresses changes after the registration even if the IP used for the current registration is still available."
This might be related to your situation. Again, I would recommend checking your client logs to determine what their actual behaviour is like.