Um... I'm still a linux newbie, but I don't think your problem is linux per se, so if you had windoze on that system...
Packet loss on small peer to peer networks can be caused by almost anything. Check, in this order:
1) The cables. If possible, replace your cable with a known good cable. Don't test when you can replace.
2) The driver. An incorrect driver which appears to be correct can cause packet loss. Update the driver if possible. Confirm you have the BEST driver.
3) Cable Stress. Similar to (1) If a cable is often bent at a particular (sharp) angle, it may over time stop working EXCEPT when bent in that way.
4) Your NIC. Nics can fail in all kinds of interesting ways. In addition to electronic failure, I have seen NICs that suffer from "cable stress" in their rj45 ports. Replace the NIC if possible.
99) Cosmic Radiation. You'd be surprised how much harm a stray alpha particle can do to a data transmission. Seal your entire network behind 3 meters of lead...
100) Alien intervention. Maybe "they" are experimenting on you? Wear a tinfoil hat and your performance should improve.
Based on what you've already said, by bet is that you have a a bad or misconfigured driver for your NIC. How to fix? No Idea. You'll need someone who knows beans about linux.