If you notice, in the scene when they are all sharing what is in their wallets/purses, Allison dumps out her bag on the couch and in a close-up we see all kinds of things, including the shirt she's wearing at the end(it wasn't a whole new dress, just a shirt).
If you remember, she had on layers and layers of clothes. I'm sure the dress was underneath that lot. Also, I'm sure Molly has those accessories in her bag. I always carry tons of hair stuff in my bag as do my daughters and friends.
It was cold weather, so everyone seemed to be wearing many layers. Didn't Alison have on a sweater and a turtleneck and stuff? She could have been wearing the white blouse underneath it, and knowing preppies like Claire, she probably had some cute little hair accessories floating around in her purse or whatnot. If you watch carefully, you'll notice that Alison is carrying a bundle of black clothing (presumably her other shirt[s]) but still wearing her skirt.
Yes, I'm sure that before Alison showed up, she decided to put on a pink, 'preppy' styled shirt on underneath her usual neo-gothic attire. You never know when you will get a makeover by a worldly cheerleader, after all! I think you can make excuses all you want, but there's really no logical answer to where the extra outfit came from, "what-if's" aside.