I see you are using an external Vref. Are you certain it is stable? Also, I have had better results using the "real" clock (not R/C) for the ADC clock. At 20Mhz, you can use Fosc/32 (ADCON2 = %10000010) in most chips.
Make sure the source impedance into the ADC pin is < 2K, and use a .1uF to ground from the ADC Pin.
If you have the time, take 4 to 16 samples, add them together and divide to get an average.