I am such an idiot. I found the problem. Now I have the XT-universal-IDE BIOS and the HD FDC BIOS all booting from the EPROM sockets, with no extra ROM cards used at all.
...the problem was that I was using 27C256 EPROM chips because I don't have any 27C64 available. They're pin-compatible, right? Right, except that the motherboard doesn't know they're 27256, so all the signals to all pins are sent as for 2764s. And so, pin 27 receives the signal intended for 2764's P which is always 1 while reading - but the 27256 interprets it as A14. And pin 26 which is not connected in the 2764 receives... who knows what from the motherboard, which is interpreted as A15 by the 27256. So depending on what the motherboard sends to those 2 pins, a different 8KB block of the 27256 chip gets selected and read. I had flashed only the first 8KB block of the EPROM with code, and evidently a different block was selected by the motherboard, and it was reading it correctly but it was blank.
The solution? Well, the obvious one would be to use 2764s. But I don't have any. So I mirrored the 8KB code 4 times, and flashed the resulting 32KB file in each EPROM. This way regardless of which block gets selected by the extra signals, the code will be there.
And it works.
I'm happy now.
I have one extra EPROM socket available for BIOS code. What should I use it for? Perhaps I'll save it for another day.
To sum it up, my system now comprises the following:
1.motherboard
2.CGA card
3.16-bit multi-IO card (inserted in an 8-bit connector), of which: the serial ports, parallel port work natively; the floppy controller works as high-density thanks to the FDC bios used in an EPROM at address F000:2000; the IDE controller works in 8-bit mode thanks to the XT universal IDE BIOS configured for generic 16-bit IDE in 8-bit mode, and placed in an EPROM at address F000:0000.
Nothing else attached now. I have another EPROM socket usable for 8KB of code at address F000:4000, currently empty. All the original BIOS chips are in their respective places and working as intended.
I will next await for all the parts the build the 1MB ISA RAM board using the PCB I received from lo-tech (Thanks, pearce_jj!), fill all that yummy empty UMBs, and then add some EMS with the 8-bit Rampage board I have, for a nicely tricked-out XT.