Temperature sensor read out is influenced by LED
By default, the internal ADC of an Arduino / ATMega MCU uses the supply voltage as a reference. When you switch on a LED, more supply current is consumed and if your supply has some series resistance it could decrease a little bit in value.
Possible solutions are:

use the internal voltage reference for the ADC.

make sure that the current through the LEDs cannot affect the ground potential of the MCU, use a star ground connection.

use an (opamp based) amplifier to amplify the signal so you get for example 50 mV/°C instead of the 10 mV/°C directly from the sensor.

Make the connection between the supply regulator and the circuit short so with a low series resistance

Feed the Arduino with a 9 V supply (assuming it has a DC input for that) instead of through USB. If you use the DC jack then there's a voltage regulator on the Arduino to provide a stable internal 5 V which might help.

Separate the LED circuit, use MOSFETs (like 2N7000) to switch the LED's on/off. Then the current through the LEDs does not have to pass through the MCU, only through the MOSFETs and LEDs + series resistors. Combining that with the star ground way of connecting (also for the VDD!!) should help.


You can combine several of these suggestions.