Place a rack in upper third of oven and preheat broiler. Combine shallot, garlic, tomatoes, olives, and oil in a medium bowl, season with salt and pepper, and toss well. Set aside.
Place fish in a 13×9-inch glass baking dish and season with salt and pepper.
Scatter tomato mixture over fish and broil until fish is opaque throughout and tomatoes have started to burst, 10–13 minutes.