lm35 output differs while changing my power
It seems as though you're running both the 5V USB and 12V battery through the same linear regulator. Since 5V doesn't have enough excess voltage to regulate to...5V, it is being dropped to 4.5V (per comments in question)

I suspect that you are seeing a change in the ADC reference voltage (AVCC or AREF) that causes the absolute output of the temperature sensor to be interpreted differently.

You should either make better provisions for creating a stable reference voltage, or use the internal 2.56 reference of the ATMega32.