Cook diced bacon in a Dutch Oven or pot until crispy, then remove with a slotted spoon, leaving bacon grease.
Add butter to the pot and melt. Stir in onions, cook for 3 minutes, then add garlic and cook for 20 seconds.
Pour in chicken broth, scrape up browned bits, and season with garlic powder, onion powder, dill, chives, salt, and pepper.
Add a bay leaf, bring to a boil, then reduce heat and cook for 5 minutes.
Stir in shredded chicken, cook for 5 minutes, then add cream cheese and whisk until melted. Stir in shredded cheese.
Add spinach and cook for 2 minutes, then stir in heavy cream and cook for 1 minute.
Taste, adjust seasonings, remove bay leaf, and top with bacon and scallions before serving.