Preheat the oven to 400°F. Slice the zucchini in half lengthwise and scoop out the centers, leaving about a ¼-inch shell. Finely chop the zucchini pulp and set aside about ½ cup to use later.
Spread about ¾ cup of the tomato sauce in the bottom of a 9 x 13-inch baking dish. Arrange the zucchini shells cut-side up in the dish. Bake for 10 minutes to soften slightly while you prepare the filling.
Meanwhile, heat the olive oil in a large skillet over medium-high heat. Add the ground beef, onion, bell pepper, and reserved zucchini pulp. Cook until the beef is browned and the vegetables soften, about 8 minutes. Drain off the excess grease.
Stir in the garlic, tomatoes, tomato paste, Worcestershire sauce, Italian seasoning, salt, pepper, and remaining tomato sauce. Simmer for 3-5 minutes until slightly thickened. Remove from the heat and stir in the basil, ¼ cup Parmesan, and ½ cup mozzarella. Taste and adjust the seasoning.
Spoon the beef mixture into the partially baked zucchini shells. Top evenly with the remaining mozzarella cheese.
In a small bowl, combine the breadcrumbs and remaining Parmesan cheese. Sprinkle over the zucchini boats.
Bake uncovered for 15-20 more minutes, until the zucchini is tender and the cheese is melted and golden. Garnish with parsley or basil before serving.