3 daysThis makes no sense but I'm willing to try it.
It cannot be a dnsmasq feature as
a) dnsmasq does not have any functionality that behaves the way you describe, and
b) if there are changes visible in the router's GUI then those changes are coming from the nvram variables. dnsmasq does not have any ability to change the router's nvram variables.
Even if this behaviour is happening it makes no sense to design a system like this. If you define a scope of 3-99 on the router it's usually because you have static assignments outside that range (which the router has no knowledge of). For one of the routers to arbitrarily decide that it's going to start assigning addresses that could already be statically assigned would be madness.
How long was it before you noticed that the router had changed it's own DHCP settings? i.e. how long should I expect to wait?
The common practices for split scopes on duel DHCP servers:
Configure split scopes on DHCP servers
How to split a DHCP scope to provide load balancing between two DHCP servers and ensure high availability DHCP services for your network.
documentation.solarwinds.com
We used the 50/50 method for years till Microsoft came out with the resilient solution. Both work great