How to increase range of zigbee?
1- Depend on the manufacturer of your ZigBee maybe it provides a setting/configuration to increase the range. You should provide information about manufacturer and model.

2- Technically it is possible to increase the range of your signal improving the: 


Antenna (gain, sensitivity to body effects etc.)- Choose an external antenna with a good gain and sensitivity factors. Usually external antenna connected through UFL or similar has better gain and sensitivity values than a on board antenna.
Sensitivity: Lowest input power with acceptable link quality. There are circuits like the SKY65336 which increase significant the range (see).
Channel Selectivity: How well a chip works in an environment with interference. It must be checked by your self or there are zigbee modules with scan function to determinate the best chanel.
Output power - Usually fixed by the model. Choose a Zigbee model with enought ouput power.see
Environment (Line of sight, obstructions, reflections,  multi-path fading)- Place your devices in the best possible location.
Data rate: to reduce the data rate can also increase the rage of your zigbee network.
Wavelenght: Zigbee module with longer wavelegth (low frequency) have more range.

There are also expensive commercial solutions to extend the zigbee network even more than 10 milles  (old article).


3- Simple formula to calculate theorically the range, so you can get an estimation about the effect of your antennas gain and Zigbee model (Tx &amp; Rx Power &amp; wavelength)  with the range:



Pr is the power available from receiving antenna
Pt is the transmitted power.
Gr is the gain of your reciever antenna
Gt is the gain of your transmitter antenna.
lambda is the wavelength -&gt; c/freq of your Zigbee


4- You should not have problem with different models of ZigBee, if you have Arduino compatible with IEEE 802.15.4 (List_of_Arduino_boards_and_compatible_systems)