Hello,
Did you find anything on your side?
While stepping in FSceneViewport destructor, where you able to confirm that FSlateApplication::Get().GetRenderer()->OnSlateWindowDestroyed().RemoveAll(this); was called properly?
It would be interesting also to know which FSceneViewport (as there can be many) stays registered and if it has anything particular? Unless the same issue occurs on all FSceneViewports?