Edit: Overlapping preceding post because I type slow.
Is it Apache or IIS?
There shouldn't be any "I think" about it. ftp yourself on in there and look at the physical files. Is there one set or two?
In Apache, the very-very first thing you'd do is make sure this rule is present:
RewriteCond %{HTTP_HOST} !^(example\.com)?$
RewriteRule (.*) http://example.com/$1 [R=301,L]
The wording is different in IIS, but conceptually it's the same thing: If a user arrives at your site using anything other than the exact name "example.com" or exactly nothing (this is for some HTTP/1.0 requests, generally proxies) then forcibly redirect them to the form you want. All you have to do is pick a preferred form and stick with it.
Make sure your internal links use the preferred form if they say anything at all. Most of the time your internal links will start with / for root. So once a person has arrived at the correct page, any subsequent requests will automatically be correct.
Sure, you can also go into Webmaster Tools and tell them your preferred form. It sounds as if they haven't picked one on their own; for some sites it seems as if they do.
For mechanical details about how to redirect, ask in the appropriate subforum, Apache or IIS.
If it's Apache you may see me again. If it's IIS you definitely won't. Something tells me that your htaccess, if any-- assuming Apache-- is an unholy mess ;)