Just in case anyone else is searching for answers.
wiringPi.net's I2C functionality seems to be incomplete. It includes 16 bit reads through I2C.wiringPiI2CReadReg16() but there are no overloads to get signed words or to deal with endian type. Not having dealt with I2C in years I was almost starting from scratch and wasn't thinking about this - spent hours trying to figure out why the numbers I was getting made no sense.
So use I2C.wiringPiI2CReadReg8() twice and sort out the sign and/or endian-ness yourself.