XSHUT has a pull-up resistor. Was it 10k or something? By setting pinMode as input, which enters high impedance state, is being pulled to 2.8V by sensor module. changing the mode to output, will activate XSHUT. The line is EMI sensitive for this kind of circuit, must be shielded wire. Or you should use normal level converter.
I usually use 1kohm for every IO pin of arduino, in order not to fry arduino.
This question comes to me time by time. Check out Ruggeduino-ET "Extended Temperature" -40C - 85C, you may find some solutions useful.
Every device with I2C usually has pull-up resistors of 10k for bus capacitance compensation. tau=RC, the bigger the C, the smaller resistance there should be. I suggest to take oscilloscope and see whether the pulses are square enough or not, I'd suggest to add additional pull-up resistors, rare times you might want to add 1k. Be careful of maximum sink current of the devices.