webgpu: fix OOB subgroup-matrix loads for trailing partial tiles (#32364)
The 8x16x16 gemm/matmul kernels let a trailing partial M/N tile's
subgroupMatrixLoad read past A/B. Tint's robustness transform resets
such an out-of-bounds load to offset 0 with the minimum stride instead
of zero-filling, so it silently returns a different valid tile and
corrupts otherwise in-range data.
Shift the trailing tile back so it always ends exactly at M/N, and skip
the rows/columns the shift re-covers at write-out. The host now falls
back to the generic path when the tile doesn't fit M/N at all, since the
shift only works when it does.