First, I'd like to make an example to show a point, take the earth-moon sim and explode the sim, by the time the dust cools off and goes back down to whatever you have the max non-attracting particles set to (mine is at 2500), it'll have spawned over 9k small fragments, both pun intended and being serious, there really are over 9k fragments. I'm sure you would agree that over 9k fragments is kind of overboard, and kills performance, right?
Now though, back in Ubox2 (the previous iteration), you could set the number of bodies that are generated by that iterations version of explode, say you wanted 100, you could set it to 100, or 10, or 50, or even 10,000 if you actually wanted that many fragments.
So, my suggestion is to have a way to control the number of fragments generated so that it doesn't go to some wild high number.
Theres some possible ways that it could be done (disclaimer: I know nothing about how the system works programming wise). Say, if you wanted something to explode into about 100 fragments (whether there is a core remnant or not would be optional), you could have it calculate the amount of dust needed to produce roughly that amount of fragments. Another possibility is using SPH.