Thank you Dave and Pedja089 for your input.
I will try implementing your suggestions and report back the results. Unfortunately I just started work so it has to wait for a few good hours.
I was thinking to try something like this subroutine but it was too late last night:

Code:
Set_pwm_pars:
	CCP1CON.4 = Pwm_pars.0
	CCP1CON.5 = Pwm_pars.1
	CCPR1L = Pwm_pars >> 2
	RETURN		
Main:
	FOR i = min_pwm to max_pwm
	Pwm_pars = i 
	GOSUB Set_pwm_pars
	PAUSE 250
	NEXT
	PAUSE 5000
	GOTO Main
My goal for now is to get enough steps with about 0.25V between them so the TEC will not complain.
BTW does anyone know if slow, occasional (every few minutes) 0.25V steps combined with heavy capacitor filtering will affect the TEC?

Thanks again for your input.

Nick