Thanks, but I actually (kind of) figured it out last night

Here's the story:
- The bios enumerates USB storage devices in order by which port they're physically plugged into. I figured out the order by trial and error.
- When windows starts up, it assigns drive letters to removable devices in the same order as enumerated by the bios.
- The problem was actually that the system drive got assigned D:, while the other drive got C: with both plugged in, because they happened to be in ports ordered that way through all the tests. (Can't believe i didn't notice this.) Apparently, explorer doesn't like living on a drive that changes letters.
Now it boots fine with the system drive in a "higher priority" usb port than the other one, so problem solved.
Still though: when a drive is assigned a letter, the unique drive signature is supposed to be tied to that letter through the registry in HKLM\System\MountedDevices. I never could figure out why the "real" C drive didn't keep its letter, even after deleting all keys and letting C be reassigned before plugging in anything else. Cloned keys also started showing up from time to time...
If anyone has some insight into how the MountedDevices keys are treated, do tell