Indeed, my first thought was that you can't be hired legally, but it appears that you can.
So, why aren't you hired?
Maybe because companies are unaware of the fact that they can hire people below 18. People from human resources may have never heard about it, and may have never received any candidature from a teenager. Since they are accustomed to receive lots of weird stuff, they don't even question the fact that you're allowed to work at your age.
Maybe because you send candidatures to only companies which accept "ordinary" candidatures. For example in France, lots of companies won't hire you if you haven't presented your CV according to some stupid rules, or you haven't a degree in programming, or you haven't enough certifications, or you haven't enough experience, or you haven't done enough projects. They don't care about your skills, and would prefer hiring a graduate who spent five years creating 40 nearly-identical CMS-like PHP websites, rather than a person who learnt all the stuff at home and at the age of 18, has already done two or three excellent, innovative projects.
Hint: you're glad those companies don't respond. You won't enjoy working there anyway.
Maybe because you don't present yourself well. Are you talking enough about your projects? Is there a link to your open sourced ones, so that the recruiter could see the quality of your source code? Are you appearing childish or professional on your CV?
Hint: using Comic Sans font on a CV would not look professional.
Hint: too many youngsters use childish e-mail addresses. They are fine for friends and MySpace, but can have a disastrous effect on a CV.
Ask for advice to anyone you know who either works as a developer or recruits developers. Give them your CV and ask for feedback. Accept all the negative feedback you receive and use it to improve your profile.
Being curious about your not so ordinary profile, I decided to do some search about you. That's what we get.
On Stack Exchange, your profile is rather sparse. The higher reputation you have is on Game Development. This being said, your Stack Overflow questions are well-written, without spelling mistakes, which is rare for a teenager. You have questions about PHP and Java, which is quite interesting too: I rarely see young programmers being interested by Java. The fact that you're asking a question about Mandelbrot is excellent. I've never seen a boy who is interested by fractals at the age of 14.
The issue I noticed is that your code lacks uniform style (and I would even dare to say that it lacks style at all). This is not surprising for a programmer with no professional experience (and believe me, there are tons of programmers with 10+ years professional experience who don't even bother about style), but would be a a negative point for some recruiters: teaching style to someone is a difficult task.
Your blog is game-oriented, and shows only the sort of applications which would never be written in a company (including game industry). Rotating a cube in 3D is a good learning example, but you'll never be asked at your workplace to rotate cubes.
Show some real stuff. An app which draws a fractal is better, but you can do even more enterprise'y. Hint: think about applications which can simplify your daily life.
In Simple Galaga Clone, it looks like you were working with two other people. What about telling more about how your collaboration happened? Are you able to work in a team?
Your Google+ account is empty, and at any moment can we find your name (i.e. first name and family name). Now, you have to find a balance between privacy and usefulness of providing information about you to everyone. Giving your post address (i.e. the address of your parents, I presume) would be a terrible idea. On the other hand, some information, like your real name, your age or your city. Make your profile "human".
Google search results have a big issue: one of the topmost results is a Facebook profile of someone with the same nickname than you, and which presents tattoos, questionable taste, etc.
This is also why you should use your real name, and then try to be at the top in Google results.