Heat 2 tablespoons of the olive oil in a large Dutch oven over medium-high heat. Add the onion, garlic, red pepper flakes and bay leaf. Cook, stirring frequently, until the onion is translucent, about 3-5 minutes. Mix in the tomatoes and their juice. Using a potato masher, mash the tomatoes to break them down into smaller pieces (no bigger than 2 inches). Stir in the sugar and bread then bring the soup to a boil. Reduce the heat to medium and cook, stirring occasionally, until the bread is completely saturated and starts to break down, about 5 minutes. Remove the bay leaf.
Turn off the heat under the pot, add the remaining 2 tablespoons of oil and puree the soup with an immersion blender (or, if you don't have one, in a traditional blender - you'll probably want to do it in 2 or 3 batches. Split the remaining 2 tablespoons of oil over the batches as you puree.) You can strain the soup through a fine-mesh strainer if you want a perfectly smooth consistency. Stir the chicken broth into the soup and return the soup to a boil. Season to taste with salt and pepper and remove from heat. Stir in the basil and serve.