Place large skillet on stovetop over medium heat. When pan is warm, add 5 slices diced bacon and cook, flipping as needed, until crisp (about 6-8 minutes).
Transfer cooked bacon to plate lined with paper towels and set aside. Pour bacon grease into heat-resistant bowl.
Return 1 tablespoon bacon grease to skillet. Add 1 cup diced onion and sauté 3 to 6 minutes, stirring occasionally, until softened.
Add 4 cloves minced garlic and sauté 30 to 60 seconds until just fragrant.
Add 3 more tablespoons bacon grease to skillet and warm until completely liquid.
Sprinkle 3 tablespoons flour into skillet and whisk vigorously until smooth paste forms.
Cook mixture over medium heat until lightly golden (1-2 minutes), then remove from heat.
Slowly add 2 cups warmed half-and-half, whisking vigorously. Return to low heat and simmer 2 to 4 minutes, whisking constantly, until thickened.
Pour in 2 cups stock and 4 cups mashed potatoes, whisking until smooth and heated through (3-4 minutes).
Add 1 cup shredded cheddar cheese and 1 cup sour cream, stirring until cheese melts. Season generously with salt and black pepper to taste.
Remove from heat and stir in most of the bacon, reserving some for topping. Divide between bowls and top with reserved bacon, more cheese, and 1/3 cup sliced green onions.