Do you have any way to independently verify the sensor? and is this behavior new or has something changed during it's use? both or either might well fix it. If it's operation has changed then perhaps it need factory repair or replacement, if it has done it from the beginning then perhaps there's an issue with the interface or possibly it is in another internal mode that has different measurement definitions than the one you wrote the sketch for. This is because you have explored your sketch completely it would seem and it appears well written. With that and Occam in mind those two idea's are what popped up when I read the post. For example I have a PC program that can read and re-program my GPS unit. and there just... might be one available for your device that will work on your PC too... Just some random thoughts...
Doc