gabriela,
A few thoughts on your questions.....
I'd suggest using a train to the Cinque Terre. There are direct (no changes) trains from Milan to Monterosso and that's about the quickest method. A car in the Cinque Terre is about as useful as a boat anchor!
There are lots of different hotels and other lodgings in the five towns, and staying in Monterosso will provide the greatest number of choices. It's important to book well in advance, so you'll need to get something booked soon!
You could certainly stay in Levanto as it's very easy to get from there to the five Cinque Terre towns. The trip from Levanto to Monterosso is only about 5 minutes on the local trains. I wouldn't recommend "walking" between the towns unless you're in good shape, as some of the trails are more of a robust hike than a walk.
Yes, three nights is adequate to see the five towns. They're all very close together, and the trip from one town to another by train only takes a few minutes.
You can easily buy your tickets when in Italy, either from a Kiosk or a staffed ticket office. You'll need to know the exact names of the stations you'll be using. For example, you'll be departing from Milano Centrale. The only reason to buy tickets in advance is for the advance purchase discounts on the fast trains, but for travel in May I suspect those will be sold out. There are no discounts on the Regionale trains, so just as easy to buy those in italy, but DON'T forget to validate those tickets prior to boarding the train on the day of travel, or you'll risk hefty fines.
The trip from the Cinque Terre to Florence is also very easy, about 2.5 hours with one or two train changes. Your destination station in Florence will be Firenze S.M. Novella.