Success!
After a lot of trial and error, I narrowed it down to one file. The culprit was vfio-pci.cfg. I haven't yet looked into what this is or why this caused issues - any idea? I haven't had the server up and running long, but nothing yet seems to have broken without this file.
In case someone has the same problem, my solution was to back up my original USB stick, do a fresh install on that stick, copy over the contents of the backed-up config folder WITHOUT vfio-pci.cfg. It's possible that purely just deleting this file from the original USB setup might also solve the issue - so I'd probably try that first.
Thanks for your help.