Apparently the two opposite meanings of to cleave have different roots: the to adhere meaning comes from one old English root (clifian) and the to cut meaning comes from a different old English word (cleofan). According to this wikipedia page
Similarly, in the expressions to run the gauntlet and to throw down the gauntlet, the word gauntlets in question has quite different provenances: in the fist case it is from an old Norse word for a passage (if my memory serves), while in the second case it is from the French gant (glove).
What other examples of this fascinating phenomenon do you know of?