For the best distance, you should use BPSK. It has a simpler modulation scheme than OQPSK which means that it transmits at a lower speed. However because of this, its easier to get the correct data when the signal is much smaller. Think of being far away from someone that is holding up a sign with multiple grayscale colors. Then think about that same situation but the sign can only be black or white. If you were far away, it’d be much easier to see if the sign was black or white than if it were different shades of grayscale. Bad analogy, but thats kind of the difference between OQPSK and BPSK. Long story short, use BPSK.
After that, start playing with directional 900 MHz antennas. Using a directional antenna will further increase your range by adding antenna gain to your signal. If you know what direction you want to transmit, then you can use a directional antenna to focus all the energy into that particular direction rather than radiating spherically outward.
FreakLabs Open Source Wireless