Preheat your oven to 350°F. In a large skillet over medium heat, cook the bacon until crispy, about 4-5 minutes on each side. Transfer the bacon to a paper towel lined plate to drain and cool. Drain most of the bacon fat, leaving about 1-2 tablespoons in the pan. You may need to cook the bacon in batches.
Add the onions to the pan and cook for 5 minutes or until they start to soften. Add the garlic, stir, and cook for about 1 minute until fragrant. Remove the pan from the heat and set to the side. Roughly chop the bacon and set to the side.
In a medium bowl, combine the corn meal, flour, sugar, baking powder, salt, and pepper. In a large bowl, whisk together the cream of chicken soup, eggs, and butter.
To the same bowl, fold in the onion and garlic mixture, 1 cup of cheese, corn, creamed corn, and about half of the cooked bacon. Add the flour mixture to the the corn mixture and combine until fully incorporated.
Grease a 9x13-inch baking dish with butter or cooking spray. Pour the mixture into the dish and spread evenly using a spatula.
Bake for 35 minutes. Top with the rest of the cheese, and then the rest of the bacon and cook for another 5-7 minutes or until the cheese has fully melted. Sprinkle with green onions.