Char bell peppers one at a time by holding them with metal tongs over a grill or gas flame, or put peppers on a sheet pan under the broiler. Turn peppers as their skin blisters and chars on all sides, then transfer to a large bowl. Cover bowl with plastic wrap and set aside to let peppers cool to room temperature.
Peel off skin from peppers with your fingers, pull off stems, then tear peppers open and remove and discard seeds. Cut each pepper vertically into sixths, pat dry with paper towels, and set aside. Preheat oven to 375°.
Melt 1 tbsp. of the butter in a large skillet over medium-high heat. Add half of the peppers, season to taste with salt and pepper, and cook, stirring once, until flesh firms up a bit and peppers are lightly browned in spots, 3–4 minutes. Transfer peppers to a baking dish large enough to hold fish in a single layer. Return skillet to medium-high heat and repeat process with remaining butter and peppers. Spread peppers in dish to make an even layer and set aside.
Make two slits 2"–3" apart on each side of each fish. Generously season fish inside and out with salt and pepper, rub cavity and slits with shallots. Lay fish on top of bell peppers in dish. Transfer to oven and roast until fish is cooked through, about 15 minutes. Remove dish from oven and pour wine over fish and peppers. Serve garnished with parsley sprigs, if you like.