Preheat the oven to 400 degrees and line a baking sheet with parchment paper.
Cut the tomatoes in halves, quarters or leave whole and place on the baking sheet with the garlic heads. Drizzle with olive oil - being sure to add a little extra to the exposed garlic. Sprinkle with salt & pepper and place in the oven for 30-40 minutes, or until the tomatoes have burst and the garlic is tender. Remove from the oven and allow to cool slightly.
While the tomatoes are cooling, melt the butter in a stock pot over medium heat. Add the onion, thyme & oregano. Cook down until the onions are tender - about 5 minutes. Remove from the heat.
To a blender add the onions, ½ the basil, tomatoes* & their juices, and the garlic (squeezed from their skin). Pour in 1 cup of broth and blend on high until smooth.
Place the empty stock pot back on the stove over medium heat and pour in the soup, remaining broth, cream and a splash of balsamic vinegar. Bring to a boil, lower heat and simmer for 10 minutes. Chop the remaining basil and add it to the soup. Taste and adjust the seasonings as needed.
To make the toast, slice the baguette and add some vegan butter to each side. Heat a non-stick skillet over medium heat. Place small piles of vegan parmesan in the skillet – about the same size as the bread slices. Place one piece of bread on top of each pile and gently press the bread down. Once the parmesan is crispy, flip the bread and brown the other side. Remove from the skillet and repeat with the remaining toast.
To serve, ladle the soup into bowls, top with the reserved tomatoes & more basil. Serve the bread on the side.
