Just a point you don't actually say you tried the HDD in the new machine.
You say "but of course it won't boot on the other computer because it has a different motherboard"
Did you actually try?.
I have successfully swapped hard drives running XP between machines - although I agree it does not always work.
Yesterday I took an XP drive from an old machine running an Athlon 750Mhz processor and successfully put it straight into a Shuttle XPC that had a mobo for 333Mhz Athlons