You're probably right. I always verify odd coolant readings by pointing an infrared point and shoot thermometer (widely available and now inexpensive) directly at the thermostat housing of a hot engine. The coolant temp sensor can be tested for resistances. Get a manual that will show you how and give you a table of resistances at different temperatures. The procedure will tell you to remove the sensor, place it in a temp of hot water with a calibrated thermometer, etc., but I usually just test while in the engine and that will get you close. You should have a VERY big swing in resistances between a cold and hot engine.
You don't mention the year of your son's Cherokee as the location of the coolant temp sensor varies a bit between older and later model XJs. On older ones, there are two coolant sensors; one for the computer and one for the dash gauge so be sure you replace the correct one if this applies to your son's XJ.