Preheat oven to 375°F and grease a 9-inch baking dish.
Cook diced bacon in a large skillet over medium heat until crispy, then remove with a slotted spoon and set aside, reserving 1 tablespoon of bacon fat in the pan.
Add minced garlic to the bacon fat and sauté for 1 minute until fragrant, then remove from heat.
In a large bowl, mix together cream cheese and sour cream until smooth, then stir in spinach, garlic, three-quarters of the cooked bacon, 1 cup mozzarella, 3/4 cup cheddar, Parmesan, onion powder, red pepper flakes, salt, and pepper.
Transfer mixture to prepared baking dish and smooth the top, then sprinkle with remaining mozzarella and cheddar cheese.
Bake for 25-30 minutes until hot, bubbly, and cheese is melted and golden.
Top with reserved bacon pieces and serve immediately with tortilla chips, bread cubes, or vegetables.