What is the proper term for a word that has Two Opposing Meanings?
The usual name for a word with two opposing meanings is Contranym (though it is still not in sufficiently widespread use to have appeared in the Oxford dictionaries). Cleave is the usual example given.