By design, SDDC Manager cluster Delete API does not ensure complete cleanup of NSX entries. If the TNs have some references on NSX, it can result in stale TNs. The cluster deletion workflow is a best-effort model. It will attempt the cleanup but if NSX dependencies are encountered, the decommission moves forward.
To summarize, NSX cleanup is best effort in all versions of SDDC, and in some sites, it may leave stale Transport Nodes.
It is a valid behavior.
Broadcom prepared 2 scripts which can help with cleaning up large number of stale hosts on NSX.
If you see a large number of stale TNs please open a new support case with Broadcom Support and refer to this KB article : KB 406768 : Script for removing large number of stale transport nodes from NSX
Note: These scripts will only work with NSX 3.2.x and higher versions.