I have committed https://github.com/perl6/nqp/commit/59d7a8869c and this test passes now.
As far as I understand, the right handler was missed when moving to the outside, because unwind_check sets the outer handler to 0 by default if no outer handler is passed. We do the latter now. I'm closing this ticket as 'resolved'.