In general, you should change your application. There are a variety of ways to do that, but your application should absolutely not be the same. You've changed in the past year, and your new application should reflect that. Get new letters if you can (3 of my letters were new, one was reused because I couldn't get in touch with the professor that wrote it initially). Put new activities, or at least update your activities with what you've done the past year.
If your application hasn't changed, you should strongly consider taking a year before reapplying.
First, is it necessary to retake the MCAT? Will schools expect that you retake it and get a better score?
Depends on what you got the first time. If you got a 25, then yeah, you should retake. If you got a 35, your chances of doing better are slim and you should focus on other aspect of your application.
Second, I am in this year's application cycle. I am on two waitlists and both schools said I won't hear until May. Should I begin preparing to reapply right away this spring, even if I am still waiting to hear back, or is it more typical to wait a year to apply again (meaning I'd be out of undergrad for two years before starting med school)? I feel like it would be difficult to apply again immediately, especially if I would need to retake the MCAT.
It depends. I decided to take a year off, because I felt that my application had not changed substantially the year I was applying. A friend of mine in a similar situation decided to take a year off to pursue a masters degree. I went and got job experience, and she got another degree, and we both ended up getting in the second time we applied.
If you can correct the weaknesses in your application by May, then it wouldn't be a bad idea to start getting things together. Or, you can elect to take that extra year off. People doing both have been successful.