Trim and cut the zucchini and eggplants into 1-inch chunks. Cut the bell pepper into strips. Roughly chop the tomatoes, reserving their juice.
Put 2 TBSP oil in a large skillet over medium-high heat and immediately add the garlic. When it begins to sizzle, add the onion and sprinkle with a pinch of salt and pepper. Cook, stirring occasionally, until the onion begins to soften (3-5 minutes).
Add the zucchini, eggplant, bell pepper, and another pinch of salt and pepper. Lower the heat a bit to keep the vegetables from burning, and cook, stirring occasionally, until the eggplant is fairly soft (10-15 minutes). Add the tomatoes and their juice, the thyme, and the olives if you're using them; cook, stirring occasionally, until the tomatoes begin to break down (5-10 minutes). Taste and adjust the seasoning.
Sprinkle the fish with a pinch of salt and pepper and lay it on top of the vegetables. Adjust the heat so the mixture simmers. Cover and cook until the fish is opaque throughout and a paring knife inserted into the fish at its thickest point meets little resistance. This will take anywhere from 5-12 minutes, depending on the thickness of the fish.
Transfer the fish to a platter, then stir the basil into the vegetables. Spoon the vegetables around the fish, drizzle everything with the remaining 1 TBSP olive oil, and serve.