Did some digging
Looks like this is about as good as it gets:
Overview Readers will learn how to configure Policy-Based Routing (PBR) on an EdgeRouter. NOTES & REQUIREMENTS: Applicable to the latest EdgeOS firmw...
help.ui.com
According to this, I would create two VLANs, one for each ISP. I would then need to discriminate at the device level. The two VLANs could still see each other on the LAN though (which is essential, for all those "smart" things we have around the house).
That doesn't exactly fix the problem, as my gaming PC needs to kind of switch back and forth - fast download speeds for patching, reliable service for playing. Although maybe I could dual-nic the Windows PC, except I seem to recall Windows doesn't really deal with that very well either - it's more like a fail over.
Maybe someone more network saavy than me can take a look at that and see that with just a couple small tweaks it could be made to do something more efficient. I am not that person.
Right now I'm just manually switching it back and forth. I tried leaving it set to dual ISP, the traffic does funky things though - like a game will log in on a client manager / front end, then when you launch the game, it will sometimes kick over to the other ISP and give authentication issues. Or movies will just decide to start streaming on the slower ISP because the latency is a bit lower...
It might be possible to direct based on DNS, but that would be tricky, and require a lot of manually creating a DNS filter to apply. I saw a couple of posts talking about that, but nothing as clear cut as the link above.
Right now the big debate is do I jump into the VLAN route, and do something like put my phone and work laptop on the DSL (for calls), dual-nic the gaming PC and still manually select between that depending on what I'm doing there... or do I just wait and hope the situation gets better.
The deciding factor will probably be if I get a bored drunk weekend to play with it or not.