Hi,
try using the -180<->180 range on angles substraction result. I did not test it.

Code:
bone_angle.pan = clamp(ang(temp_angle.pan), -90, 90);
bone_angle.tilt = clamp(ang(temp_angle.tilt), -90, 90);
bone_angle.roll = 0;



I hope it helps.
Salud!