I live in a pretty humid environment where it rains about 9 months out of the year. Northwest WA, just a few miles south of Abbotsford, BC.
My OEM projectors have fogged for the entire time i've owned the truck. Over the years I have cleaned the vent caps several times, replaced the vent caps, I drilled holes and added goretex vents. The still fogged up, every time it rained, which is pretty much every day.
The last time I drilled them to add more goretex vent stickers, drilled the wrong spot, hit some circuit boards and screwed them up.
I bought a replacement set of used OEM projectors on eBay, and instead of messing with the vents, I just took WildOne's advice and threw 3 desiccant packs in each headlight.
No fogging since! Sometimes the easiest solution is the best one.