Monomorphize method types in Typer impl for BlockS

In some obscure circumstances, failure to do this can cause
unsubstituted type parameters to show up where they aren't
expected and cause an ICE.

Closes #18514
Add regression test for issue #18514