Can the switch display whether it has established an Gbit link or only 100Mbit? I believe that some of the older builds of ethtool doesn't report Gbit connections at all. What does "dmesg|grep eth0" give you?
An example :
http://ubuntuforums.org/showthread.php?p=2233407