From my own experience (made a game in the same genre), players cared a lot more about a smooth/lag-free gameplay experience than about visual effects or tactile-feedback, especially if they're in the end-game where numbers get huge. There are some things you can do to optimize without a hard-cap; sprite-batching is a big one.
In the end though, a cap is the most practical. One simple technique you could try is to pool the 1,000 visible-entities separately, so your actions can bind to one of them randomly and always produce a visual effect. A subtle tradeoff that still provides that visual juice! :)