If you are getting heat going down the road and not when stopped I really don't think its the thermostat I would lean more towards vaccum or the heater control selector not locking into position completly. There are two cables on the back of your climate control dash selector. One that controls the temperture or the heat and the other that selects off, the defroster, floor heat or the vent. Sometimes these cables binde, stretch or the clips pop off causeing the control doors in the heater box to stick half way between, so you may be selecting floor heat but you may also have the vent partially open allowing cold air to mix. So when you come to a stop your rpm's drop, causing your voltage to drop some, allowing the fan motor to slow down and cold air from the vent to mix in with the heat easier. In turn giving you the cold air. Move the control lever around to different positions and see if you notice any change. Also move it to the off position and check to see if the system actually turns off. My 1987 YJ does not remain in the off position because of one of the cables, it will turn off when I hold the switch all the way to the left but as soon as I release it the defroster turns right back on.
Yours being a 1990 I believe still works or a cable system its just a different dash selector setup.
2013 JK Wrangler Two Door with 3.6L VVT Engine
1987 YJ Wrangler with 1998 4.0L Cherokee Engine