ERIKA,
Given the time your flight arrives, I think that one night in Milan is unavoidable. Is there any possibility of changing your flight to an earlier arrival time?
As you'll have to clear Passport control, collect your luggage and then get to either the Shuttle or Malpensa Express terminals, I suspect you probably won't arrive in Milan until at least 23:00. If there are several other flights arriving at that time, it could be busy! I believe the last train for Varenna departs about 21:25 so there's no way that will be possible.
You could take the Malpensa Express from the airport and stay at one of the Hotels near Via Dante, but the least complicated option would be to take the Malpensa Shuttle to Milano Centrale and use one of the Hotels in that area. There are several listed in the Italy Guidebook (The Best Hotel seems to be reasonably well rated, but I've never stayed there).
After breakfast in the morning, head for Milano Centrale (watch your belongings!) and buy your ticket to Varenna. Research the times on the net so you know which train you want to take. Note that the ticket will be listed as Varenna-Esino. If you have some Euro cash, I'd suggest going down to the ticket office, which is two floors down from track level (via "moving sidewalks"). There will probably be a queue at the ticket office, but use the ticket machines (the machines near the ticket office will accept cash, while those on the main floor only credit cards and there's usually a queue for those machines). Keep some Euro coins at hand in case you have to use the WC's at Milano Centrale while you're waiting.
continued.....