I don’t think it is possible to replace RestoreViewPhase inside Mojarra. But I might be wrong. You should ask this on the Mojarra list.
Seam Catch would definitively be an option to look at. I doubt that a custom ExceptionHandler will work for you. It doesn’t look like Mojarra is handling the exception thrown from the PhaseListener with an ExceptionHandler (see the code from your second post).
If you are using CDI you should really take a look at Seam Catch. If you are using Spring, you could try to implement an Interceptor that catches and handles the exceptions.
Do you play Magic?
Get TopDecked MTG, the #1 Magic App, built by players, for players. Free to use, forever.