Preheat oven to 190 degrees C. Line a baking tray with aluminium foil.
Stuff the cavity of the snapper with 1/2 cup basil leaves and set aside. Heat the peanut oil in a large frypan over high heat until it begins to smoke. Place the snapper in the frypan and quickly brown on both sides, about 1 minute total. Place the fish into the baking tray and sprinkle with fish sauce. Reserve the peanut oil in the frypan.
Bake fish in preheated oven until the flesh flakes easily with a fork, 25 to 30 minutes.
Meanwhile, heat the remaining peanut oil over medium heat. Stir in the garlic, ginger, chillies and yellow capsicum and cook until softened, about 5 minutes. Stir in the sugar, rice vinegar, water and tomatoes. Bring to a simmer over medium-high heat until thickened to desired consistency. Pour the sauce over the snapper and garnish with the remaining basil leaves to serve.
Large chillies are less hot than smaller chillies, so choose those if you wish to lessen the heat of this dish.