Actually, if you want it to stop subtracting when in town, change the conditions by adding:
-Bring: Current Player brings exactly 0 Protoss Zealot to "Protoss City".
That would keep the triggers working only when the player isn't in the city.
Simply add one bring for each city or town, or wherever you do not want minerals to be reduced.