Heat 2 Tablespoons olive oil over medium heat. Add the chopped onion and carrots and cook until soft, about 10 minutes, stirring occasionally.
Add 1 Tablespoon tomato paste, and cook until the paste is browned and beginning to stick to the pot, about 5 minutes, stirring often. Stir in the minced garlic and cook until fragrant, about 1 minute.
Stir in the chopped tomatoes, 3 cups vegetable or chicken stock, 1/4 cup packed chopped fresh basil leaves, 1 Tablespoon kosher salt,2 teaspoons sugar, 2 teaspoons freshly ground black pepper, and 1 teaspoon baking soda. Bring to a boil and simmer for 30-40 minutes. Note that when you add the baking soda, the mixture will froth, and there will be a layer of foam on the top of the soup. Don't worry, this is normal (this is the baking powder reacting with the acidic tomatoes).
Remove from heat. Puree using an immersion blender (carefully). Strain the soup, using a fine mesh strainer, stirring and pressing pulp against the mesh to remove all liquid. Discard pulp (see note).
Stir in 1 12 ounce can 2% evaporated milk. Return to medium heat to reheat. Serve with extra basil to garnish, and with croutons if desired.
Notes
Straining is optional, but without straining, the soup is very seedy with pieces of tomato skin.