Ideas? Here are some:
Avalon has two really good restaurants, and several that are usually pretty good, and several that are all about the fun:
Armstrong's in Avalon -- not on a dock, but pick up a mooring, ride the shore boat, and enjoy a great meal. There are other very good restaurants too, but Armstrong's is the best.
Steve's Steakhouse in Avalon -- As good as Armstrong's for everything except maybe sometimes some fresh fish.
Schooner or Later in Long Beach Marina, Alamitos Bay, next to Stan Miller Boats. There is a small guest dock that says something like "nothing over 16 feet" but I go in there, and you will fit too.
Captain Jack's in Sunset Beach. Founded by Jack Halley (father of the ex-Chicago Bull and current Laker announcer), still family owned and operated. Guest dock about 100 feet long. Fairly shallow, do not try and go under the bridge at very very low tide, OK otherwise. Great steak and lobster place. Its on Pacific Coast Highway, you get there via Huntington Harbour. Type their address into maps.google.com and you'll see where they are and how to wiggle through the channels: 16812 Pacific Coast Hwy, Sunset Beach, CA
Dana Point has some restaurants. You can tie up at a guest dock next to the launch ramp and walk to at least 4, three are very close but casual, another is about a block away, overlooking the marina, is pretty good.
Ventura Harbor has a guest dock, as does Santa Barbara. There are a few restaurants very close by. I think at Santa Barbara I need to call the harbor master to get a slip, I don't remember (2 years ago).
Channel Islands / Oxnard has restaurants with guest slips. One set of restaurants is close to the launch ramp. Another set of restaurants is across the harbor. Whale's Tail is, I think, the best.
Shoreline village off downtown Long Beach has several good ones there.
Two Harbors at Catalina has the "Reef" which is fun, and the food is OK, but not great.