In a medium saucepan, bring 2 cups water, the milk, 1 teaspoon salt and pepper to taste for the grits to a gentle boil. Whisk in the grits. Reduce the heat to simmer and cook, stirring often with a wooden spoon, until the mixture is smooth and thick and falls easily from the spoon, 45 to 60 minutes.
Towards the end of the cooking time for the grits, in a large skillet, heat the olive oil over medium heat. Add the onions and cook until soft and translucent, 2 to 3 minutes. Add the garlic and cook until fragrant, 45 to 60 seconds. Stir in the tomatoes with their juice and the bay leaves. Season with cayenne pepper. Reduce the heat and simmer until the mixture is slightly thickened, 5 to 10 minutes.
Increase the heat under the tomatoes to medium high and add the shrimp. Cook until the shrimp are pink and firm, an additional 3 to 5 minutes. Remove the skillet from the heat and stir in the parsley. Taste and adjust for seasoning with salt and pepper. When the grits have thickened, stir in the cheese and butter. To serve, place a heaping spoonful of grits on each plate. Top with the shrimp and tomato gravy. Garnish with additional Parmigiano-Reggiano and chopped parsley. Serve immediately.
Recipe courtesy of Virginia Willis