EDIT:
Storing
When you send creeps (in the category TeamXSendsCreeps), store
entering unit and
last created unit
into variables at the start of the trigger and use them throughout your execution.
Same thing applies to Movement T1 (Although you can skip "Move1T1/2/3/4" triggers, these ones only have one line)
Also the same to "WorkerLeavesRegion" category triggers.
In the "Spy" trigger, do the same just with a player variable.
Aaaand same thing applies to "PlayerLeave" category, store triggering player within a player variable (same as above).
Same thing to Zombie Revive (SpecialCreep ctg.), store triggering unit and last created unit.
--
I think you get where I'm going. If you use function calls more than once (like Triggering Unit), it's best if you store them into a variable. They don't need cleaning as well.
Trigger structure
That's the thing what is bothering me the most. You have multiple triggers for each/player team, when you could merge them all using variable arrays and if then else blocks. I didn't look into the trigger cores, but I can certainly verify that. As for your current multiple triggers, you can leave them be (or rework them, but it will not be easy on you

). It shall be a note for the future.
If I'm understanding you correctly, you want to improve your editing even though everything works flawlessly in-game. These changes won't improve the enjoyability of the game, it will improve your editing skills for the future, for better, faster and more efficient coding. If that's the case, then be my guest and do your best! (rhymes, hue)