That is such a hard question. The more time you have in each place, the more you'll be able to explore and enjoy.
Venice. If you are ready to splurge, a taxi is not at all a bad idea. The trip across the lagoon can be lovely, but if you're on the standard Alilaguna boat, it's not very comfortable and the seating doesn't offer much of a view. 3 nights minimum since you are likely to be jetlagged. Give yourselves a little time to relax and wander.
My copy of The Agony and the Ecstasy has a list of all of Michelangelo's extant works, many of which are in Florence. If you want to see them, you'll need a couple days to do it, but you'll have time to see a lot of other beautiful works of art in the same places. In my limited experience, Florence is much more crowded on the weekends, so if you can, arrange to be there Mon-Fri. I don't think it matters in Venice. Crowding in the CT is probably more a factor of cruise ship schedules than anything else. I think I would figure out how many nights to spend in each of your other stops, then allot the rest to Florence. There's so much to see and there are worthy day trips too.
I haven't been to Lake Como yet. Since you are flying out of MIlan, consider spending 2 nights there and using a full day to take in its sights. The Duomo is well worth the time, and wandering among the rooftop spires is interesting and you'll have good views too. You can tour La Scala and visit the museum. I enjoyed the Sforza Castle and its museums.
Depending on how much art/architecture you want to enjoy . . . stop in Padua on the way to Florence (luggage storage at the train station) and see the Giotto frescoes. Stop in Pisa on the way to the CT (luggage storage here too) and visit the Campo dei Miracoli - see and maybe climb the Leaning Tower, the church and grounds are beautiful and the baptistry is exceptional.