Depending on your configuration, moving to half duplex will indeed cut your bandwidth dramatically.
In full duplex operation, you have, in essence, 10Mb/s guaranteed bandwidth up and down. When you go to full duplex, you move back to "regular" ethernet, which is a collision-based system. In a half duplex network, it's a first-come-first-serve operation. Your computer transmits when it sees the network is clear. It is very possible (and, in fact, very very likely under high traffic conditions) that another computer will have ALSO started transmitting at the same time you did. Both your signals go across the wire and interfere with each other, effectively cancelling out both transmissions. This is called a collision. When your computer sees a collision it stops transmitting and pauses for a random amount of time before trying to re-transmit.
If there's not much traffic on the wire, it's not a biggie. You really won't notice the difference between half duplex and full duplex at 2Mb/s. When you get to 4Mb/s, you start seeing major collisions. The higher you go, the more collisions you get. In fact, getting 6Mb/s is rare on a 10BaseT network - Things start to go bad above at 5Mb/s and often you see decreasing throughput as the traffic grows, as there's just SO many collisions that most of the traffic is colliding and getting delayed.
One caveat to this - The more computers you have and the busier they are, the worse it is. If you only have two computers and one is sending and the other is receiving data, you're going to be in better shape. As I recall, someone on this board did some testing and found that one client downloading from one server can sometimes get better throughput through a hub rather than a switch, due to the processing overhead a switch requires. But in general, 95% of the time you'll see better performance on a switch (full duplex) than a hub (half duplex).
Last point - 10Mb/s full duplex was really never very popular and used very widely. For a cable network, I'd definitely stick with 10Half or 100Half or 100Full. In truth, auto/auto is usually best.
Have you tried to replace the cable? It does sound like some kind of physical problem (or issue with the router). There's an app that I use called WS Ping Pro Pack, by Ipswitch. It has a throughput tester. You might try to find it (or something else) that allows you to put a load on the network. Try and run the load just to your router, from different PC's and see if you can break it. If so, then it's a problem on the inside. If not, try and put the load to your default gateway outside your router and see what that does. It's the standard troubleshooting routine - Start as close to you can to the local PC and work your way out - When you fidn the point that breaks, you've got your problem.
Best of luck!
- G