Heat/heater is slang for "gun" (definition #14) and to pack has an informal meaning "to carry, deliver, or have available for action" (v. tr. definition #8). So "packing heat" means that you are carrying a gun (and are ready to use it).
According to the Oxford English Dictionary, here is the first citation for this phrase:
1932 W. R. BURNETT Silver Eagle i. 7 ‘He don't even pack a heater.’ ‘Don't what?’ ‘He don't carry a gun.’
And the first citation I see that uses heat instead of heater (from an old dictionary):
1942 L. V. BERREY & M. VAN DEN BARK Amer. Thes. Slang §496/6 Pack (a) heat,..to carry a gun.
I could be mistaken, but I believe this exact phrase originated on Slashdot, in an April Fools' prank on April 1, 2006.
From the Wikipedia page on Slashdot:
In observance of April Fools' Day (April 1) in 2006, Slashdot temporarily changed its signature teal color theme to a warm palette of bubblegum pink and changed its masthead from the usual, "News for Nerds" motto to, "OMG!!! Ponies!!!" Editors joked that this was done to increase female readership.
The exact Slashdot article said this:
Our marketing department has done extensive research over the last 3 quarters and discovered that our audience is strangely disproportionately skewed towards males. Like, 98.3% males to be precise. To correct this oversight, we have decided to subtly tweak Slashdot's design and content to widen our appeal to these less active demographics. Don't worry! We'll still continue to serve our core audience, but we hope you'll work with us as we try to find a balance that will work for all.
There was a stream of articles on the site that all followed this theme of writing, using lots of caps and texting phrases like LOL, OMG, lots of exclamation points, and getting excited about things like My Little Pony, glitter, the O.C., and other things young girls would be interested in.
Here is the Slashdot site logo from that day:
The meaning of the joke is that this is how young girls write things. So, this phrase is used as a way to jokingly react like a 12-year old girl would.
Best Answer
Literally it means half a pint, when perhaps you shouldn't be drinking, for example, at lunchtime when you still have an afternoon of work left. Though it may be that if someone says they're 'just going for a cheeky half', they actually mean they are intending to consume rather a lot more than that.