This is a concurrency problem of parallel requests on different nav node. UIPage objects are cached now for performance, when you move from nav node A -> B, the UIPage A takes off from the tree and B will be replaced.
So the proper fix would be to simply replace getAncestorOfType(UIPortalApplication.class) by Util.getUIPortalApplication() in the #getSuitedTheme.