Eliminating ADC Noise
It's often a good idea to put a 0.1uF capacitor between the analog input and analog ground. This can help filter out some of the noise. 



The image above obviously depicts a discrete ADC, but the same concept can be applied to a microcontroller's integrated ADC.

It's impossible to say how much of the noise is internal and how much is external. The best you can do is put it in an EMI-shielded box and see how much it improves. If it doesn't, chances are most of the noise is internal (coming from within the system itself - clocks, thermal noise, etc).

EDIT:

As stowoda suggested, the instability could also come from your ADC voltage reference. If you use the microcontroller's power rail as your Vref then your ADC is at the mercy of the noise on the supply line. If it's coming from a battery then you'll mostly just have noise from within the micro. However, if you're powering it with a SMPS or a DC wall wart, or even some linear regulators, then your power rail will be all over the place, and thus your Vref will as well.