Melt 1 tablespoon butter in medium saucepan over medium heat. Add grits and cook, stirring often, until fragrant, about 3 minutes. Add milk, water, and ¾ teaspoon salt. Increase heat to medium-high and bring to boil. Reduce heat to low, cover, and simmer, whisking often, until thick and creamy, about 25 minutes. Remove from heat, stir in remaining 2 tablespoons butter, and season with salt and pepper to taste. Cover and keep warm.
Meanwhile, melt 1 tablespoon butter in 12-inch nonstick skillet over medium heat. Add shrimp shells and cook, stirring occasionally, until shells are spotty brown, about 7 minutes. Stir in tomato paste and cook for 30 seconds. Add water and bring to boil. Reduce heat to low, cover, and simmer for 5 minutes.
Strain shrimp stock through fine-mesh strainer set over bowl, pressing on solids to extract as much liquid as possible; discard solids. You should have about 1 ½ cups stock (add more water if necessary to equal 1 ½ cups). Wipe out skillet with paper towels.
Cook bacon in now-empty skillet over medium-low heat until crisp, 7 to 9 minutes. Increase heat to medium-high and stir in shrimp, garlic, ½ teaspoon salt, and ½ teaspoon pepper. Cook until edges of shrimp are just beginning to turn pink, but shrimp are not cooked through, about 2 minutes. Transfer shrimp mixture to bowl.
Melt 1 tablespoon butter in now-empty skillet over medium-high heat. Whisk in flour and cook for 1 minute. Slowly whisk in shrimp stock until incorporated. Bring to boil, reduce heat to medium-low, and simmer until thickened slightly, about 5 minutes.
Stir in shrimp mixture, cover, and cook until shrimp are cooked through, about 3 minutes. Off heat, stir in lemon juice, Tabasco, and remaining 1 tablespoon butter. Season with salt and pepper to taste. Serve over grits, sprinkled with scallions, and passing extra Tabasco.
