I would think that having multiple animations might make the code cleaner, unless you are going to families instead.
But having a menu where you select the ball you want to use from those you have earned/bought would be the easiest way I'd say, an then either have it set a global variable that references a particular animation or sprite in the family to display.
As for the start of the game, it may come down to how you have designed the game. Depending on how it is made, you could store each level as a text file then read them in and have the game set them up accordingly (using arrays and setfromJSON expression)