You should set the application orientation as Unspecified and then in a "orientation changed" event use SetScreenOrientation, according to a previous Landscape orientation saved in a file.
However, as far as I know, the only way to know if the device has been rotated is to compare the size of the Activity in Activity_Create ot Activity_Resume and these events do not raise if you use SetScreenOrientation.
I know that this is not a helpful answer, it is an observation.