Heat 1/4 cup olive oil in a Dutch oven over medium-low heat. Add the onion and cook, stirring, until softened, 8 to 10 minutes. Add the garlic and red pepper flakes and cook until softened, about 1 minute. Increase the heat to medium, add the tomatoes and 1/2 teaspoon salt, and cook, stirring occasionally, until juicy, 2 to 3 minutes. Add the tomato juice, basil sprigs and 3 cups water. Bring to a simmer and cook until the tomatoes are very soft, 15 to 20 minutes.
Add 3 cups bread cubes and return the soup to a simmer. Cook, mashing the bread with a wooden spoon, until broken down, 5 to 7 minutes. Discard the basil sprigs. Stir in the vinegar. Working in two batches, puree the soup in a blender until smooth, adding 2 tablespoons olive oil per batch. Refrigerate until cold, at least 2 hours or overnight.
Before serving, heat the remaining 2 tablespoons olive oil in a skillet over medium-low heat. Add the remaining 2 cups bread cubes; cook, tossing, until golden, 5 to 6 minutes. Season the soup with salt; top with the croutons and chopped basil.