Is it possible to place new pieces on the map that are invisible to the other player without having to make them invisible?
I’m not sure whether your objection is to the invisible trait, or the need to manually turn it on.
If you just want a piece to be invisible immediately on placement, you can have the map apply a key command to every piece placed on it, and a trigger for that key command with a condition like OldMap=="(where it came from - a player window?)"&&CurrentMap=="(where it is now)"&&InvisibleToOthers==false that triggers the invisible trait.
I have a problem where some planning markers should never be visible to the other side (and the planner should rather not be able to forget to make the planning markers invisible), but other game pieces can become temporarily invisible during play, and it would be awkward if these pieces are invisible once they are placed on the map.
I don’t see how that’s a problem. Different pieces can have different triggers.