Your problems are most like caused by duplex mismatch. I bet you're using auto negotiate to figure whether to go full, or half duplex.
This causes an unbelieveable amount of problems in the networking world.
FORCE your cards to one of the four options and test each until it works properly. Easy with windows boxes, buggered if I know how to do it on anything else.