So, each interface is directly connected to a cable modem and each cable modem is configured to NAT a routable IP address to the same subnet range even though they are totally separate. TCP sessions that start on one interface must remain on that interface even though they may seem to be on the same subnet.
I think I now see your problem. You definitely need to have each interface specified as a different possible route for load balancing and failover.
First question, can you change the LAN settings on one or the other of your cable modems? One of my two ISPs is a cable provider and they gave me a customer log in where I can change those settings on the modem. (I have a business class service and I don’t know if this is allowed on a residential account nor do I know if other cable providers allow this.)
I’ll take a look at the back end scripts that set up the ip rules and see what it might take to have the back end support both device and address. Right now there are a number of places that deal with either a device or address. Those will have to be changed. However that is only part of the change needed, so I think Fulvio might have to take a look at the user interface end of things for this type of change.