I had similar issues, but unfortunately I couldn't resolve this. The reason for this seems to be that the setprop ro.sf.hwrotation doesn't tell android which way the display is orientated, but what to accept as the default device rotation (like for a device without accelerometer).
(you can test this on an Android device in a rotatable app: if you rotate your phone left or right, it will rotate accordingly, but if you hold it upright and immediately hold it upside down, it will remain as is)
I fixed it on my system by changing the LVDS display invert X/Y pins so that it displays the other way around, and changed my touch driver to invert values... I'm sure there must be an easy way.