In a large pot, melt the butter over medium heat.
Add the diced onion and sauté until translucent, about 5 minutes.
Stir in the minced garlic and cook for an additional minute.
Sprinkle in the flour, stirring constantly for 2 minutes to form a roux.
Gradually whisk in the chicken broth, ensuring there are no lumps.
Pour in the beer and bring the mixture to a simmer.
Add the heavy cream and stir well to combine.
Slowly add the shredded cheddar cheese, stirring until fully melted.
Season with salt and pepper to taste.
Serve hot, garnished with chopped bacon and green onions.