Couple of coats of collinite will give the best protection by far.
For cleaning plastics just use an interior quick detailer or mild APC type product. Sometimes if I'm cleaning the glass and I see a bit I normally CBA to get another product so I just wipe over with that. I'm suprised you're getting greasy marks with any product tbh, are you using a dressing type product? They will all leave marks on non porous plastics, I never dress interior plastics.
To clean glass properly just clay it and give a quick hand polish afterwards. If you're talking about actually removing marks (wiper scratches etc..) Then that's extemly hard work, it requires a rotary polisher, special pads (rayon discs on our website, elitecarcare that is) and a cerilium oxide polish like Carpro Ceri glass. To do it properly on a whole car will take many hours of hard work since the finish on glass is rock hard.