Why would they do such a thing? Well, airlines must pay those online travel sites a fee for each ticket booked, so naturally they'd like to avoid doing that and keep all that lovely income to themselves and, in general, it just means more money flowing in overall. By keeping carry on bags free and mileage accrual at 100% for those who purchase on flyfrontier.com, the airline can always defend themselves to irate customers by simply saying that their own website always offers the best deal and "you should have booked with us."
So there's the answer on how to easily avoid being charged $100 for a carry-on bag, or anything at all: book on flyfrontier.com whenever you fly Frontier.
Is it confusing? Actually, not really. Frontier isn't the first airline to impose carry-on bag fees (Spirit famously started it all back in 2010!) and they aren't the first to stress direct booking (it's Southwest's whole philosophy). Still, even Spirit doesn't charge a whopping $100 for carry-ons; their fees are more manageable at $30-$35 in advance (though if you don't buy until the gate, it is $100). These are all issues the US traveling public has been wrestling with for several years now; the fact is Frontier is just joining in on a slow trend.