Facemasking is a penalty for many reasons.
First off, it's a safety issue, as you can easily wrench someone's neck with it or easily get an eye poke in a QB or WR exposed cage during a facemask. It's also a leverage/tackling issue. You get a guy by the facemask, you can pretty much lead him around, however the heck you want until his helmet pops off, which also brings about yet another safety issue.
Contact to the head will happen in Football. It's why players wear helmets, however so long as the contact isn't a result of intentional or reckless hitting (IE hitting a QB high if he's throwing, putting your head down making helmet to helmet contact, blind side hits - espcially when a low tackle would have done the job) it shouldn't be penalized.
A stiff arm to the face is intentional and should be a penalty. It's illegal in Aussie rules, which is one of the most brutal codes of Football on the planet. Should it be a 15 yard major foul? Not sure. I mean a stiff arm is a lot different then a facemask. You're only pushing is neck back one way, and you aren't wrenching it left and right. You still might get a poke past the cage in there though, although most defensive players have some degree of eye protection as part of their cage, unlike QBs, WRs and Kickers who need a wider field of vision.
It's slightly less of a safety issue, but certainly much more of a leverage issue. Unless a tackle is low, a textbook tackle can be easily be thwarted by a stiff arm to the face. Then again, there's no reason a player can't aim for the shoulders or chest in most cases.