Wow. You sir are an absolute daemon. In all my years experience with computer networking, I have never ever come across this problem & wouldn't even think about it as being a potential problem. Well done! I just tested this using another cable and it worked fine. So you are spot on. I can't believe it. Thank you very much!
EDIT: I just found the dodgey patch. It was a cable I hadn't punched down properly in my patch pannel. I punched that down properly and now I'm getting a 1 gig auto negotiation. Learned today that GB uses 4 pairs and 100MB uses 2 pairs. I actually didn't know that. Thanks for helping