How to use 3.3V and 5V outputting sensors with Arduino?
A simple solution is to use a resistor divider (ratio approx 1:1.94) and reduce the 5v signal to a peak of 3.3v
That way you would retain full resolution whilst not needing to switch reference.
Suitable divider would be to use a 18k from the sensor to the analog input and a 33k from the analog input to ground. This would translate the 5v input to a 3.23v input. Use of higher precision resistors would get this closer to 3.3v if needed.
You need to ensure that the sensor can supply the current needed for a given value - in this case about 0.1mA.
The input resistance of the ATMega analog inputs is about 100M ohms so you could increase these values (reducing the load on the sensor) significantly before worrying about the effect of the input resistance.