Did you remember to give each board a different MAC address by editing
the biffboot file before writing it with JTAG?
AFAIK you can't have two devices with the same MAC address on the same network.
Alternatively, given that the CPU board and the IO board are so easy
to separate and swap over, I guess you could try a "known working" CPU
board (which is where the MAC address is actually stored) with a
"possibly broken" IO board, which would allow you to determine if it's
definitely a hardware problem with certain IO boards?