現象を再度説明すると
・PathNotFoundRuntimeExceptionの発生
・内部エラーによりhttpステータス500となる
です。
検討した対応としては下記のとおりです。
・jsfErrorPage.diconでの設定による回避
->出来なかった
・web.xmlのerror-pageの設定による回避
->ステータスコード500での回避となり、本来の404には出来ない
・サーブレットフィルタで例外を処理する(力技)
->フィルタに到達した例外はServletExceptionになっていて出来ない(causeも無し)