There is no way to register for a property undo event, because Blender’s undo system does not work per property. It effectively reloads the entire scene on undo, there is no information about which properties specifically changed.
User interface data is not part of the undo system, and the window manager is part of the user interface. Only scene data changes are undone, the UI stays the same. It may be more appropriate to attach the data you want to be undo-able to a scene or object, it depends.