I am currently in the middle of a three week trip from Cairns to Sydney, so can hopefully help. We stopped in Singapore for 3 days which has helped us get over the jet lag a little, broke up the very long flights and gave us something a little different.
Our itinerary is -
Singapore 3 days, fly to Cairns
Drive up to Port Douglas for 4 days
Drive down to Mission Beach for 2 days
Drive to Townsville, catch ferry to Magnerix Island for two days
Catch ferry back to Townsville, drive to Airlie Beach for a day
Catch ferry to Hamilton Island for two days
Fly to Sydney from Hamilton Island
Sydney for 4 days
Fly back to London via Singapore
We found that we didn't like Cairns that much as it's a very backpacker focused town. Port Douglas was much prettier and has a nicer feel to it. We stayed at an eco resort between the two called Thala Beach which was a nice balance. North of there is the Cape Tribulation and Daintree which is well worth a day trip. You can see crocodiles and so rainforest walks.
All of the towns and islands south of Cairns have been beautiful and well worth a visit. There are lots of waterfalls on the way down, wine farms and plenty to see. The driving has been ok too, and we are only around 3 hours between places so it's not too much wasted time. If you do fly from Cairns to Sydney or Brisbane, you will miss the Whitsunday Islands which for us is a must see. Please google image search Hill Inlet to get what I mean!
We booked via Trailfinders who have arranged everything for us, and it worked out a bit cheaper than doing it ourselves and much more convenient.
The main Great Barrier Reef excursions go from Cairns and PD. Lots of Whitsunday Island tours and walks from Airlie Beach which is the gateway to the Whitsundays. Make sure you factor in enough time to do these, especially if driving.
You will have a great time!