Nothing beats staying "in the park" at one of the Disney hotels. But, as mentioned, they are expensive. I don't remember if the early entry is limited to the 'in the park' hotels at Disneyland or not. If it is, that's a pretty good benefit and worth considering. You can ride Dumbo a few times without waiting on much of a line with early entry. Plus, I think each inside hotel has some sort of character breakfast, lunch and/or dinner, and the kids love those. (Especially if you can't get a rez for one of them inside the park.)
Last time I was there, the Marriott had one of the better shuttles. It was a city operated shuttle (looks like a trolley), and drops off and picks up inside the gate. Many of the hotels use the drop-off area right outside the gate (and it really does make a difference) and many of them make several stops.
I've also stayed at the Hyatt. It's ok, but not as good as the Marriott. The Hyatt's shuttle was a full-sized tour bus, meaning it takes a long time to load and unload and, as I recall, it also stops at a hotel accross the street from the Hyatt. And when it's full, it goes. You wait 20 - 30 minutes for the next one, which can happen at opening time and after the fireworks.
My info is a couple of years old, so, you might want to verify it with the properties to see if any of it has changed.
-David