While not exactly a hand warmer and not really a camping type solution...this did remind me of a hot/cold pack idea we do around the house.
Sometimes when you need a hot pack for sore muscles, etc. or a cold pack for bumps/bruises, etc., you can use a rice sock.
Fill a sock (preferably clean LOL) with a couple of cups of rice and tie the end into a knot.
Then, if you need a hot pack, put the rice sock in the microwave for little bit. Be careful not to overheat it as it can get very hot but it will retain the heat for quite some time. The rice easily conforms to your body and heats the sore muscles.
Leave one in the freezer and it will work equally well as a cold pack.
We have been doing this for years and it works pretty well in a pinch.