Debian (partially?) fixes this by renaming Tcl's OP macro to OOP in all man pages.
It may be worthwhile to consider changing some macros to names that don't have conflicts with macros in common *roff macro packages.
Still, that wouldn't obviate the need to move man.macros to after TH.