In a deep 10-inch cast-iron skillet, cook bacon over medium heat until crisp, about 10 minutes. Remove bacon using a slotted spoon, and let drain on paper towels. Remove all but 2 tablespoons drippings from skillet; reserve remaining drippings.
Add onion and corn to skillet. Cook, stirring frequently, until tender, about 3 minutes. Remove onion mixture from skillet. Add 2 tablespoons reserved drippings to skillet; reduce heat to medium-low.
In a large bowl, whisk together cornmeal, flour, sugar, baking powder, and 1 teaspoon salt. Stir in 1 cup cheese.
In a medium bowl, whisk together buttermilk, eggs, and remaining reserved drippings. Make a well in center of dry ingredients. Add buttermilk mixture; stir until just combined. Stir in bacon and onion mixture. Sprinkle remaining ½ teaspoon salt in skillet. Carefully pour batter into hot drippings. Top with remaining ¼ cup cheese.
Bake until golden brown and a wooden pick inserted in center comes out clean, about 30 minutes. Garnish with bacon, if desired.
Recipe by Taste of the South at https://tasteofthesouthmagazine.com/bacon-cheddar-cornbread/