There is a possibility that a problem exists with the lcd code. When the temperature is changing there might be data sent to the lcd, out of the ascii character range. If so, then the characters are not printable. Is the lcd code tested, have you used this code with success in other projects as well?
You can understand if this is the actual problem, by doing the following test. Before you send a character to the lcd check its value. If the value is smaller than 0x20 or greater than 0x7E, then send another character instead, like let's say 'F' (fault). When this thing happens again if you see an LCD with 'F' characters, then the problem is with the lcd code. If on the other hand the same behaviour is observed, you should look into memory overflow issues, or bad command send to the lcd at some point.
Regards,
Alexandros