Preheat oven to 375 degrees. Heat 2 tablespoons oil in a large skillet over high heat. Add shallot, and, stirring constantly, add ginger, garlic, lemon grass, lime leaves, Thai chile, curry leaves, and coconut. Continue stirring until the mixture is fragrant and coconut is beginning to dry out, 3 to 5 minutes. Remove from heat, and let stand until cool.
Fill the belly of the fish with three-quarters of the stuffing. Use a long wooden skewer to hold the belly of the fish closed. Heat remaining 1/2 cup oil in a large skillet over high heat. Add snapper to pan, and cook until the skin is crisp and brown, about 3 minutes per side. Very carefully pour off oil from pan. Transfer fish to oven until cooked through, about 10 minutes.
Meanwhile, heat remaining stuffing in a small saucepan over medium heat. Stir in coconut milk, and heat through.
Transfer cooked fish to a serving platter. Strain sauce through a fine sieve directly over the fish. Season with lime juice, and garnish with scallion greens and cilantro.