Generally, British English often keeps words separate in a compound noun such as this, while American English is more likely to run them together eg back seat, apple sauce (GB) backseat, applesauce (US).
As for the stomach ache example, I'll admit that GB Eng is a little inconsistent here. After all, we often run toothache, backache and heartache together, so why not stomachache? I would guess it's because it looks so strange. The 'achache' at the end makes you think of a jolly Latin American dance or something - which sounds far more fun than a stomach ache anyway!
And yes, I'd agree with Stephanie that we wouldn't hyphenate the two words.