A difficult question, but not necessarily for the reason you think. It's difficult to define a web developer because the internet is an unregulated playground.
Yesterday, PPK, the developer who lives at QuirksMode, posted about a lovely trolling session he received from other 'developers', when he attempted to define the term by suggesting that a web developer is someone that can make a fully functioning site without using any tools. I'll try and do the same from my perspective, regarding developers in the UK.
Imagine a builder, a doctor, an electrician, and a window cleaner. The first three of those jobs require qualifications before they can legally do certain things. A window cleaner can start cleaning windows without any qualifications at all.
Web development is a lot like window cleaning. Many of us start tinkering with code in our youth. For some, it remains just a hobby. Others have been known as script kiddies. So how do we define the difference between a hobbyist, a script kiddie, my next door neighbour who can make a website in Frontpage for £5, and me, someone who has had the job title of web developer in a professional context for eleven years?
I believe the problem is and always will be the lack of regulation in our industry. Without the strong guidance of regulation, there's no set path for a developer to follow, and so we all go our own separate ways.
Definition of a web developer
I would class a web developer, as opposed to a hobbyist, as someone who keeps up to date with their field. Someone who strives for continuous improvement. Somebody who validates their HTML against the W3C validator (because if you're not writing valid HTML, you're not writing HTML. And if you're not writing HTML, you're not a web developer). An individual that doesn't break the laws that do exist regarding the web. You've heard of the Equality Act 2010 that requires by law that websites are accessible, right? You're making sure that your sites pass W3C WCAG 2.0 Level AA checks? Because if you're not, you're not a web developer, and you're making software considered illegal by law. There're always exceptions of course, and those exceptions are called juniors.
Personally, I don't use frameworks. They ballooned in a time when new standards were being drafted, and developers were desperately trying to implement draft specifications into their work. Frameworks helpfully filled in the gaps left by choppy browser support, but we're currently in a bit of a lull. Close to 100% of the browsers now in use in the UK support almost all of the current specs, so what are we using frameworks for? I suspect it's simply because many agencies became dependent upon them from a code reuse point of view. But one of those libraries has more weight than this entire page (which is valid, accessible, responsive, optimised, etc), so is it time to change?