Okay, this has been covered 1000 times before, but i'll tell you how i fixed mine.
1. Get your hands on some 2000 grit sandpaper (probably easiest to get from a panel beater as hardware stores often only have 1500 which I found too course) Fold the sandpaper into quaters and lightly rub this over the headlight longways & in one direction only, not circular or this will cause more damage that you already have. Also be sure to continually dip the sandpaper in a bucket of water for lubrication.
2. Get some cut and polish, I used motospray which was in a black tin and sold at most car stores such as supercheap (it's green and smells like "extra" chewing gum ). Apply this to a clean cloth and rub over the headlight (again in one direction), this will remove most of the fine scratches caused by the sandpaper. You can also use some of the water used with the sandpaper for more lubrication.
3. Buy some maguires scratch x, and follow up to remove the rest of the scratches that the coarser cut and polish wont remove.
4. Finish off with some maguires plastic polish, I have only ever seen this sold at autobarn (might be sold else where too), but it is awesome stuff. Once this is applied the lights will come up crystal clear.
I used steps 1-4 of this treatment several months ago and the lights still look fantastic despite many long trips involving bugs and road crap hitting the lights and after each wash the head lights keep coming up like new. If they dull out again just rub in some more maguires plastic polish and they will clear up again.
Hope this helps.