The Compass Store has small button compasses just over a 1/2" in diameter. If you attached some heavy-duty thread to the center of a piece of sturdy cloth, then cemented the cloth to the back of the compass, you could sew it onto your jacket.

(These compasses are only sold in lots of 12, for $50, but they may be available elsewhere separately)
http://www.thecompassstore.com/oemcompass.html

Sue