There's a lot of weird opinions in the comments I've read so far (wait a minute, am I on Slashdot?).
First: The poster wants to telecommute exclusively to do "hardware and network" stuff. That's why he can't find any work. Simple as that. Be willing to get your old ass to the office and you'll find a job.
Second: People argue until they're blue about "old workers" vs "young workers". The fact is that the "team" is what matters, believe it or not. At my job we needed to add a new programmer to our small team, and my boss made sure that I was involved in the interview process. We interviewed three potential candidates: One was a Harvard graduate, one was a very talented middle-aged programmer, and the last was a decently talented 30-something. We caught the Harvard graduate in a lie, so he was out. The middle-aged programmer was absolutely amazing; he would have brought a ton of experience and raw talent to the team, however he was "so much better" than the rest of us that it probably would have created problems in working together. We ended up going with the 30-something, and he's working out just great because he's on the same level as the rest of us.
Every team is unique, and being better than the rest is not always a good thing when you're concerned about getting work done.
First of all, having a degree will help you get those first couple jobs until you gain more experience.
Beyond that, your attitude highlights the problem with the majority of "web developers" - they don't see themselves as computer scientists. This leads to inefficient, cobbled-together solutions. Web developers often want to "just make web sites" but never learn anything about the real skills of software development: requirements gathering, architecture and engineering, testing, deployments, etc. You end up being a web "programmer" but not a web "developer".
I'm not saying that a college degree will give you all of this, but what I am saying is that you shouldn't picture yourself apart from the rest of computer science.