In a large 3 quart sauce pan, melt butter over medium heat. Add onions and saute until soft. Add garlic and cook for another minute. Add tomatoes and their juices and stock.
Bring to a simmer then remove from heat. Let cool for 10 minutes.
If you like creamy soup, blend the soup in your blender, or an immersion blender. You can also remove have the soup, blend, and return to the pot if you like it a bit creamy but also with more texture.
Add one-half of the sour cream. Whisk until well-blended, then add the remaining sour cream.
Whisk until sour cream is fully combined.
Stir in pepper and cheese to blend. Add additional salt and pepper to taste.
Gently reheat to serve.