You didn't describe electrical part of the system. Is this a temperature control using thermistor? If you are using PWM control (e.g. thermo-electric cooler control or a heater) I believe that spikes come from the sensor (thermistor) input electrical interference with PWM pulses. If so, try to separate/shield thermistor wires and PWM output wires. Additional capacitor on the input should help also.
If nothing works, add simple 3-point median filter to cut out spikes from the sampled signal: