Place four 14x12" sheets of parchment paper, or heavy-duty foil if grilling, on a work surface. Divide zucchini among parchment sheets, arranging on one side of sheet in thin layers. Sprinkle shallots and sliced basil over, dividing equally. Scatter tomato halves around zucchini. Drizzle each packet with 1 Tbsp. wine and 1/2 Tbsp. oil (add 1/2 Tbsp. water to each if grilling). Season with salt and pepper. Place a fish fillet atop each portion. Season with salt and pepper; drizzle 1/2 Tbsp. oil over each.
Fold parchment over mixture and crimp edges tightly to form a sealed packet. DO AHEAD: Can be made 4 hours ahead. Chill. Let stand at room temperature for 15 minutes before continuing.
Preheat oven to 200c. Place packets in a single layer on a large rimmed baking sheet. Alternatively, build a medium fire in a charcoal grill, or heat a gas grill to medium-high. Bake or grill fish until just cooked through (a toothpick poked through the parchment will slide through fish easily), about 10 minutes. Carefully cut open packets (steam will escape). Garnish with basil leaves.