Make the marinade. Preheat a grill to medium high. Meanwhile, combine the lime zest, ginger, shallot, olive oil, 1 teaspoon kosher salt and a few grinds of pepper in a bowl.
Stuff the fish. Thinly slice 1 lime. Stuff the slices into the cavity of each fish along with the basil leaves and ginger slices. Set aside half of the marinade for serving, then brush the rest on the fish. Season inside and out with kosher salt and pepper.
Grill the fish. Preheat a grill to medium high and brush the grates with vegetable oil. Transfer the fish to the grill and cook until the skin starts to crisp, 5 to 7 minutes. Do not move the fish or the skin will stick to the grill. To flip the fish, place a spatula under the head end and use tongs to hold the cavity closed; gently roll the fish over. Cook the fish on the other side until the skin is crisp, 5 to 7 more minutes. Check the eyes: When they're both white, the fish is done. Transfer to a platter. Cut the remaining 4 limes in half; grill cut side down until caramelized, 3 to 4 minutes. Transfer to the platter.
Fillet the fish. Using a fork and starting at the tail end, peel back the skin from one side of the fish; discard. Run a knife along the back of the fish to separate the top and bottom fillets. Use the knife to remove any additional skin along the back. Using a spoon, gently loosen and lift the top fillet away from the bottom fillet. Lift the head and use the spoon to carefully separate the spine from the bottom fillet. Discard the tail, head and stuffing. Remove and discard the skin from the bottom fillet. Repeat with the second fish.
Serve. Drizzle the fillets with the reserved marinade; finish with some olive oil and a sprinkle of flaky sea salt. Serve with the grilled limes and more basil.
Branzino is a sustainable fish with mild white flesh. If you can't find it, use small trout. When buying fish, look for taut skin, clear eyes and bright red gills-those are all signs of freshness.