ちょっと見た感じ、

1)実際の例外は systemユニットの procedure _RaiseExcept; が本体で
  構造化例外APIのRaiseExceptionが呼ばれる

2)構造化例外は全てデバッカで一度捕捉されてしまう
  デバッガオプションで EAbort等については無視

3)try は以下の5行のアセンブラ出力に変換される(思ったより例外のコストは低い)
 xor   eax,eax
 push  ebp
 push  exceptのアドレス
 push  dword ptr fs:[eax]
 mov   fs:[eax],esp

4) exceptのアドレスには
system._HandleOnException;
 がある。

だから、やろうと思えば、system.RaiseExcept で
グローバル変数、デバックマスクフラグを用意し
そのフラグ値によってAPIの構造化例外の代わりに自前で例外を処理する
( ebpとfs:[0] を戻してアドレスにジャンプする)

ようにすれば、デバック中に場所によってマスクするような事が可能かも