lattice: fix correctness bug in tmerge limiting (#50939)
In 162ee48e1c3, the added code causes us to violate the tmerge_fast_path
requirements on the lattice. This was causing the fall-though from the
earlier tmerge_fast_path to not return correct answers to inference
anymore. Adding back another tmerge_fast_path, on the types, allows us
to recover correctness without regressing accuracy to before #47992.
Also added a test case for an example in which tmerge_fast_path does not
return a correctly limited answer, since it does not model UnionAll
complexity growth.