Dual DVI 5K display fails xinit AFTER booting into Windows and back

I have a rather weird problem. I have a 5K Dell UP2715K monitor that works over two Displayports. The graphics card is an Asus TUF 3090 OC, but the exact same issue manifests in a previously used Zotac 3060. The cards have 3 Displayports. This is being used with a 5950x cpu with an Asus Corsair VIII formula motherboard. The monitor can be used in 4K with one panel, or two 2560x2880 panels stitched together (for 5K). I’m dual booting Arch (EndeavourOS install) and Windows 11 (used to be Windows 10 - had the same issue). Now, on to the problem:

  1. If I have everything running in Linux, it’s ok. I can boot, shut down, restart… everything works.
  2. If I then go into Windows (through Grub or through BIOS boot loader), everything works.
  3. If I then shut down / reboot Windows and go in to Linux, it goes into grub, I can see initial console output, then when it’s about to launch X (I think), A colourful thin horizontal line appears in the middle of the screen (like old crt monitors when you turned them off!) and the screen goes blank. It’s not off… there’s backlight, but there’s nothing else on the screen. From the motherboard LED display, I see that everything’s “normal”, ie. there’s no hardware lock up or anything.
  4. If I reboot (hardware switch, because even Alt+F2 doesn’t get me anything) or shutdown (same), on booting up, the same thing happens.
  5. I can go into Windows once this has happened, and that works, but going into Linux does not.
  6. If I take out one cable, and plug it in to the third displayport on the 3090, Linux then boots, but in a very stretched 2569x2880. Once logged in, I can use nvidia-settings / xrandr and that shows a nice 5K display. I can even plug back the cable removed, and it works. However, if I reboot / shutdown-start even into Linux, if the two cables are plugged where they were on the last Windows boot, I get the same thin-line-blank-screen problem.
  7. I even set xorg.conf to only have one panel in 4K and the other disabled. And still, if both cables are plugged in, X simply won’t start.
  8. Switching ports from (DP-0, DP-2) to (DP-2, DP-4) works, and if I configure it and save to xorg conf, it persists and things work rebooting / shutting down and starting Linux. But as soon as I go into Windows and then back to Linux that combination is “poisoned” and if DP-2 and DP-4 is plugged in, Linux refuses to boot. Switching back to (DP-0, DP-2) then works.

In other words, it doesn’t seem to matter what’s in my xorg conf, if I boot into windows with two cables attached, until I physically alter the cables connected, I can’t boot into Linux anymore.

Any ideas on how I can figure out why this is happening or a workaround to stop it from happening?