Right off the bat as a native English speaker, I'd say it's much more common for people to use the indefinite article with these terms. Yes, it's technically correct to use them without any article, but again, it depends on what you want to emphasise.
Saying "I have backache" sounds a lot more like you've had it for a long time (a chronic problem).
Saying "I have a backache" sounds like it's just started and that it will likely go away in a short amount of time.
There's also the issue of whether to use these words with a space before "ache" and how that will change this rule. I would say if you do this, it would make it more correct to use the indefinite article. If you keep them as one word, it's technically more correct to not use it. However, in reality, these rules are not really followed from what I see, and people tend to use the article in all cases.