I'm also a glasses wearer, and after lots of experimentation, have found the best solution is to start with a quality pair of goggles - they're heavily discounted. Consider getting a pair with clear lenses so that you can wear them above treeline at night, in case you want to do night hikes - you probably have sunglasses you can wear under them. Then, go to a ski shop and buy a couple of fleece neck gaitors - the ones labeled Turtle Fur are the best. THey run about $10, and are a double thickness. The fleece tends to disburse your breath better than anything I've found, although it helps to develop a discipline of pursing your lips and breathing downward. A big advantage of the neck gaitor is that anything over your mouth will get wet from the moisture in your breath, so about once an hour or so rotate the gaitor a quarter turn and it will be dry by the time the first spot gets to your mouth again. I have several Balaclavas, one of which is the top-end OR Gorilla, but not work as well as a simple neck gaitor.
Make sure the gaitor is tucked up under your goggles, so that it barely touches the frame on your glasses.
As for the goggles - things like Cat Crap, Vision-X (auto parts store) will help a bit, but aren't foolproof. Don't put the goggles on until you actually need them. Sometime you see people trekking up the hill with them over the top of their head - nearly a certainty that so much moisture will have accumulated (and frozen) on the lenses before they use them that they're already frosted up.
Good luck - all goggles ice up in some conditions, so it's sometimes a matter of minimizing it rather than eliminating it.