Okay, just re-reading. If you have no way to force your switch to a certain speed or duplex, how can you be sure that it's running at 100/Full?
Also, forcing your NIC to 10/Full (referring to your other thread in the Networking forum) WILL result in a duplex mismatch if your switch/router is set for auto (which I'm almost positive it is). If you were going to try anything, I'd say try forcing the NIC to 100/half or 10/half.
Also, changing speeds to 10mbit really shouldn't "solve" the problem, it's just a sign that something else is wrong (usually faulty wiring, or that by changing the setting you actually got rid of another problem, like a duplex mismatch... Or, like Seth says on his webpage, it could just be a driver issue)
I've also run into some situations where 100mbit (or usually gigabit) systems manage to over-drive the system at the other end, which causes packet loss (either on the NIC, in the driver, or on the switch). Reducing link speed will avoid the issue, but usually a better solution is to reduce TCP window sizes, application block sizes, or whatever, to "throttle" the machine that's overwhelming.
Seems like this would be opposite in your case as well - the iMac would be the LEAST likely to overdrive. But then, if it's a possibility and you haven't found the REAL problem, I never eliminate it.