I don't normally weigh in on itinerary questions because I think each person's sight choices are individual, based on their personal preferences.
That said, here's a couple techniques I use to develop an itinerary:
Be flexible on your dates. I start by getting my air booked (sounds like you've already done this). When I'm booking I try moving my dates a few days in either direction, reverse my trip, try different airports both to fly in and out of. I set up alerts for a variety of options and buy when I get a good deal that works for me.
Remember travel days. A travel day is any day you don't sleep the same place you woke up. On a travel day, you get up, pack, check out, get to transportation, get to your new destination, get to your lodging, check in, unpack/get settled, and find some meals along the way. My general rule is no more than 4 hours travel time (whether by air, train or car) on a travel day. By the time you throw in the extra activity, your day will be full. Any time you end up with for seeing sights at your new destination is a bonus on a travel day, better to not count on it. I often plan a stop along the way but realize that means extra connections, waiting, hassle - and more of your day shot.
It takes two nights to spend one full day at a destination (flanked by travel days). Three nights translates to two full days, etc. When you're planning time, it's easy to think two nights equals two days but it really doesn't.
When I'm planning an itinerary, I want to know every sight option possible. I'll read travel guides from the library, check local TI sights online as well as Trip Adviser "Things To Do". Don't forget to check for festivals, fairs, special exhibitions on or around the dates you will be in an area.
Once I know all the options I rate them according to my personal interest as must-see, good to see if there's time, and skippable. I plan two must-see sights per day, one in the a.m., one in the p.m., with time for lunch between the two. I keep a list of good to see sights in my back pocket (for me on a spreadsheet on an iPod) with all relevant information (address, open hours, cost, etc.). If I have extra time (spent less time at a must-see, first choice wasn't available, add something in the evening), I can pull that out and find something to do (assuming I'm not burned out and want something to do).
As I said above, I plan two must-sees per day. So how long do I stay in one place? Take my must-sees in that location and divide by two - literally. Sometimes I don't have time for that, other times I want to stay longer just to slow down - but that's the rule of thumb I start with.