Cut the tops off the garlic heads just to expose the bulbs and remove any excess papery skins. Place in a large sheet of aluminum foil and drizzle with 1 tablespoon olive oil and 1/2 teaspoon each of the salt and pepper. Close the foil around them, leaving a space between the tops and the foil, and place on a baking sheet in the oven. Roast until soft and fragrant, about 1 hour 15 minutes. Remove, cool, and squeeze out the garlic into a bowl.
In a large, heavy soup pot (preferably enameled cast iron) over medium-high heat, melt the butter, add the roasted garlic, and cook for 5 minutes. Add in the flour and cook until a dark golden roux is achieved, an additional 5 to 6 minutes, stirring frequently. Add 1 cup chicken stock, incorporate, and repeat until all the chicken stock had been added. Repeat with the water. Add the Italian seasoning, remaining salt and pepper, and stir to combine well. Bring to a simmer and cook for 15 minutes. Add in the cream, if using, cook for 10 minutes more at a very low simmer, stirring occasionally. Adjust the seasoning, if needed, and serve garnished with a sprinkle of the parsley and a fresh drizzle of the extra virgin olive oil. Serve with Asiago Crostini.
Preheat the oven to 400 degrees F.
In a small bowl, combine the oil, garlic, and spices and mix well. Place the bread slices on a parchment-lined baking sheet.
With a basting brush, coat each piece with the oil-spice mixture. Sprinkle each slice with about 1 teaspoon of the shredded cheese.
Place in the oven and cook until cheese is melted and bread is starting to crisp and darken around the edges, 8 to 10 minutes.