Booking in advance when the flight operators have offers running is usually the best way to get a good price for flights. Holding off until the last minute can work, but on a couple of occasions we have been caught out. IE in June my daughter who did not book at the same time as us paid £80 extra at the last minute.
Package versus DIY is a hit or miss, especially depending at which time in the season you want to go. Sometimes we go package, othertimes diy.
It is especially difficult trying to get a decent price flying from Scotland, fortunately for us we can leave from Newcastle and take advantage of slightly better prices and more flights to choose from.
Next time you are over on a package ask around the apartment owners, there are apartments there which don't advertise much but are very reasonable and you may be able to set yourself up for a future visit. When we were over we managed to get an apartment for our daughter in the first week of July for €200. Take a look at the very reasonable prices for the Galini.
Another tip is to get on the mailing lists with the Thompsons, Excel flights, etc, which will keep you up to date with their latest offers.
Because they negotiate discounts Gemstone travel can sometimes come up with a cheaper price for flights than booking direct with the Flight Co. direct.