01 - Heat olive oil in a large saucepan over medium heat. Add chopped 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 incorporate all ingredients evenly.
04 - Bring mixture to a boil, then reduce heat and simmer uncovered for 20 minutes, stirring occasionally to prevent sticking.
05 - Remove from heat and puree the soup until smooth using an immersion blender or by blending in batches in a standard blender, then return to the saucepan.
06 - Stir in heavy cream and unsalted butter until fully melted and smooth. Adjust seasoning if necessary and keep warm until serving.
07 - Spread softened butter on one side of each bread slice.
08 - Place 4 bread slices, buttered side down, on a skillet over medium heat. Top each with 2 slices of cheddar cheese, then cover with remaining bread, buttered side up.
09 - Cook until golden brown and cheese is melted, about 3 to 4 minutes per side.
10 - Remove sandwiches from skillet, allow to cool slightly, then cut each into strips suitable for dipping.
11 - Ladle hot soup into bowls and serve alongside the grilled cheese dippers.