Preheat the oven to 400°F (200°C).
In a large, deep skillet over medium heat, cook the chopped bacon until crispy. Remove with a slotted spoon and set aside, reserving the bacon grease in the skillet.
Bring a saucepan of water to a boil. Add the cauliflower florets and cook for 5 minutes. Drain and set aside.
Add olive oil, diced onion, and garlic to the skillet with the bacon grease. Sauté for 3–5 minutes, until the onion softens.
In a small bowl, whisk together the milk and flour until smooth.
Pour the milk mixture into the skillet. Bring to a low boil, just until the edges begin to bubble.
Stir in the cheddar, parmesan, and salt. Whisk until the cheese sauce is smooth and creamy.
Fold in the drained cauliflower until fully coated in the cheese sauce.
Transfer the mixture to an 8x8-inch baking dish. Sprinkle the cooked bacon evenly over the top.
Bake for 20 minutes.
Remove from the oven, sprinkle with chopped chives, and serve hot.