I think what's happening is that two fireballs are making the decision to reverse direction on the same frame, so they both use the same random number for the decision and so they end up being stuck on top of each other. As far as I know, as as long as the fireballs are either both non-freezers or both freezers they will remain stuck together until you smash them. They don't necessarily need to spawn on the same frame, just as long as they get in sync with eachother in terms of the frame on which they decide whether or not to reverse. Climbing/descending ladders is a way in which the fireballs can get in and out of sync with eachother, since they don't make any reverse direction decisions on a ladder.