01 - Heat olive oil in a large pot over medium heat. Add diced onion, minced garlic, and diced carrot. Cook until softened, about 5 minutes.
02 - Add crushed tomatoes, vegetable broth, sugar, dried basil, dried oregano, salt, and black pepper. Bring to a boil, then lower heat and simmer for 20 minutes, stirring occasionally.
03 - Remove pot from heat. Puree the mixture with an immersion blender until smooth, or carefully blend in batches using a countertop blender.
04 - Stir in heavy cream and unsalted butter. Return to low heat and warm through, adjusting seasoning as needed.
05 - Spread softened butter on one side of each bread slice. Assemble sandwiches with cheese slices between two bread slices, buttered sides facing out.
06 - Heat a skillet over medium heat. Cook sandwiches until golden brown and cheese fully melts, approximately 2 to 3 minutes per side.
07 - Remove sandwiches from skillet and allow to cool for 1 minute. Cut each sandwich into strips for dipping.
08 - Ladle hot tomato soup into bowls and serve alongside the grilled cheese dippers.