I have 2 networks (main house and workshop). Both have a seperate modem/router. Both pieces of equiptment are very basic and because of the internet vendor I cant swap these out. I set one up using a subnet of 192.168.0.0 and the other using 192.168.2.0. I joined these routers together using an ethernet cable. Both routers let me define a single static route. All is great. A device on subnet A, goes out through Router A, a device on subnet B goes out on router B. But I can also access A from B without going out through the internet and VPNing in.
However it only works if the IP addresses (and specifally the default gateway) are correct. I have a ton of iOT things so I dont want to static assign everything. I put two DHCP servers on Subnet B. Each is configured with a static IP for only 1 network (DHCP A has a static IP for A, and DHCP B has a subnet B address). I get a lot of cross assignments (Device plugged into A, gets a B address).
Again, I am very limited on what I can do with the routers. If needed I can add a third router in or managed switch or whatever.