01 - Heat olive oil in a large saucepan over medium heat. Add onion and cook until soft and translucent, about 5 minutes.
02 - Stir in minced garlic and cook for 1 minute until fragrant.
03 - Add crushed tomatoes, vegetable broth, tomato paste, sugar, dried basil, dried oregano, salt, and black pepper. Stir to blend evenly.
04 - Bring mixture to a boil, reduce heat, and simmer uncovered for 20 minutes, stirring occasionally.
05 - Remove from heat and puree the soup until smooth using an immersion blender or regular blender in batches. Return to pot if needed.
06 - Stir in heavy cream and unsalted butter until melted and well combined. Adjust seasoning as needed and keep warm.
07 - Spread softened butter on one side of each bread slice.
08 - Place 4 bread slices, butter-side down, on a skillet over medium heat. Top each with 2 slices of cheddar cheese, then cover with remaining bread slices, butter-side up.
09 - Cook sandwiches until golden brown and cheese is melted, about 3 to 4 minutes per side.
10 - Remove sandwiches from skillet, let cool slightly, then cut each into strips. Serve alongside hot tomato soup.