Yes, if you plug it straight in to the card you need a cross over cable. This is standard ethernet stuff.
The first troubleshooting step would probably be to do that-- connect straight to the PC in order to rule out problems with the routers.
Next thing is to make sure
XP's personal firewall feature isn't getting in the way. The ports in that FAQ entry aren't the same for the Receiver, so you might want to double-check the ports. Maybe the Receiver uses more ports than the ones you opened on the routers? Maybe it works fine for a while then tries to use a new port and that's when it locks up? In any case, temporarily disabling the firewall in XP and connecting straight to the Receiver with a crossover cable would rule this out.
Next thing is to make sure it's not one of the files on your PC that's giving the player grief. See if it'll just repeat one particular song over and over for more than five minutes. If so, then try playing more songs (progressively larger playlists) until it gives the locking problem. It could be one particular song. Or maybe you're just feeding it playlists that are too big-- it has a known bug where it will lock up if you ask it to play too many songs (fixing this is item number one on their to-do list, by the way).
For more ethernet troubleshooting steps, check the
FAQ at www.riocar.org. I know that's for the car player, but most of those ethernet troubleshooting steps apply to the Receiver, too.