I currently live in a nice apartment in Park Slope (after some hard searching), and went through the entire search process (for a 1 BR in a shared space) about a year ago, so the searching process is still pretty fresh in my head.
In terms of living space, it really depends what you want out of the city and what you're going to be doing/not doing in your living space. If your bedroom is going to be a place where you spend virtually no other time other than sleeping, then the location doesn't factor into it all that much. In terms of what you're looking for versus a desirable price point, it's nigh impossible to find a great apartment in a great neighborhood for a great price. You can usually find two out of three with some effort, but all things considered you'd be a lucky guy to find a match with all three (although they are out there). In terms of pure neighborhood zest, you already hit the places you would most want to live. Park Slope, Williamsburg, Brooklyn Heights, Windsor Terrace, Prospect Heights, Cobble/Boerum Hill, and areas of Fort Greene or Clinton Hill are really the places you want to be looking. If you ask me, it's really all about the neighborhood. I'd much rather live in a shitty or small place in a great neighborhood (with great train access - more important than you might think) than vice-versa. But again, having said all that, it's still going to be tough to find even a tolerable place for much around $2000/month.
In terms of places to live, I've found that Craigslist is not as sketchy as its reputation lends itself too. I've met plenty of affable and nice roommates and potential roommates through this, but there are a few other sites around if you're interested. Contrary to the above poster, I wouldn't really recommend a realtor, unless you really can't get into the city at all (and obviously you should never, ever commit to a place before getting a great look at the place, building, and neighborhood). Happy searching!