In a large pot, heat olive oil over medium-low heat. Add onion and sauté until tender, about 3-5 minutes. Add garlic and cook until fragrant, about 30 more seconds. Stir in bay leaves. Add tomatoes, broth, and brown sugar.
Bring the soup to a boil, and then reduce the heat to low. Simmer (uncovered) over low heat for about 15 minutes. Remove the bay leaves from pot. Use an immersion blender (or a regular blender in batches) to puree the soup until it reaches the desired consistency. You can leave some chunks of tomatoes, or make it completely smooth.
Stir in the cream and basil until well combined.
Serve warm. Garnish each bowl with grated Parmesan cheese and fresh basil, if desired.
