Mix first 7 ingredients in a medium glass bowl. Season sauce to taste with salt and pepper. (Sauce can be prepared 2 days ahead. Cover and refrigerate).
Prepare barbecue (medium-high heat). Place carrot in a medium bowl. Cover with ice water. Let stand 15 minutes, then drain well. Brush fish on all sides with 2 Tbsp oil. Sprinkle with salt and pepper. Grill until just opaque in center, about 4 minutes per side.
Meanwhile, heat 1 tablespoons oil in a large nonstick skillet over medium heat. Add shallot; stir 1 minute. Add spinach; sprinkle with salt. Toss until spinach is wilted but still bright green, about 2 minutes; divide among 4 plates.
Place fish atop spinach. Sprinkle each filet with carrot; drizzle each with 2 Tbsp sauce. Serve with remaining sauce.