If you hit the tank and thermostat housing with a laser thermometer and saw a >20* difference, I would not suspect the fan thermostat or engine thermostat is bad. Around 185*F is normal for internal combustion engines (diesel or gas). The boiling point of water in open air at about sea level (1 atmosphere) is 212*F (100*C) - with antifreeze it shifts a bit higher, and with the closed cooling system and a good radiator cap keeping the pressure in it rises a bit more too (without knowing what you radiator cap is regulated to, I can only guess your boiling point is about 220*F - so this is why the other commentor has said it is "not normal" he's right - it's dangerous for any water-cooled engine to be indicating a water temperature that high).
If you are seeing 240*F at any time, be assured that you should also be seeing a bunch of coolant flowing into the over-flow tank and eventually on the ground as that overfills - at 240, just about any water-cooled engine would be in full-on boil-over.
If you start with the engine cold, remove the radiator cap and then start the engine and let it get to temp - I'll bet your fan tuns on and then off without the radiator spewing coolant all over the place (which would mean it's not boiling anywhere in the cooling system). I that is the case, you can be assured that you can call BS on the gauge. Make sure that you take the radiator cap off when it is >>COLD<< if it was run hard at all and got to temperature before you remove the cap, you will lower the vapor point of the fluid and cause a spontaneous boil - which will eject sticky (glycol is a "sugar") boiling water all over your hand, face and chest (and anyone next to you). Think of it like being covered in boiling napalm... Treat it with the due respect!!!
I think either your wiring is bad, or you have a gauge+sender combination issue as another commentor has suggested. Be aware that your indication equipment can be messed up and the rest of the system can be running just fine. They are separate typically for this reason.