To prepare the soup, heat your butter or oil in a large skillet over medium heat. Add the onion. Sauté for 4-5 minutes, or until the onion is soft and clear, stirring frequently. Add the garlic and cook for one more minute, continuing to stir as you go.
Add the tomatoes and broth to the pot. Bring to a boil, cover, and simmer for 20 minutes. Use an immersion blender to purée the soup till smooth, or transfer to a standing blender and blend till the soup is completely smooth. It will have a somewhat creamy consistency as is, but if you'd like it to be a little creamier, add 1/4-1/2 cup cashew cream. Add salt and freshly ground pepper to taste; the amount of seasoning you need here will depend on how salty your broth and tomatoes were. If your soup is thicker than you like, add up to an extra half cup of broth or water to loosen it up.
To make the grilled cheese, blend all ingredients except for the bread and optional toppings in a blender till smooth. Transfer this mixture to a medium sized saucepan. Heat the cheese sauce over medium low heat, stirring constantly with a whisk or spoon as you go. The mixture will be very liquid at first, then it will thicken up fast! Stir vigorously to be sure that it doesn't get clumpy. When it appears thick, smooth, and a little shiny, it's ready.
Place 4 tablespoons of the cheese sauce on a slice of bread. Top with another slice. If you like, coat the two outside surfaces of your sandwich bread with a little vegan butter.
Heat a frying pan or griddle over medium high heat. Add a teaspoon (or so) of vegan butter or oil. Add your sandwich. Cook for 2 minutes, pressing lightly with a spatula as you go, or until the bottom side of your sandwich is crispy and golden brown. Flip the sandwich and cook the second side the same way. As you work, you can cover the vegan cheese sauce with a layer of saran wrap; this will keep it from developing a film. The sauce will start to become more solid as soon as you take it off the stovetop, but it will get smooth and creamy again as the sandwiches cook in the pan.
Slice your grilled sandwiches. Serve with a cup of hot tomato soup, and enjoy.