Preheat the oven to 400 degrees F. Grease the inside of an 8x8 square baking dish with non-stick spray or butter and then set it aside.
Prepare the onions by chopping into small pieces. If you are using fresh bacon, prepare in a pan until crispy and let cool. Once bacon is cool, chop into small bite size pieces.
In a large mixing bowl, mix the cornbread mix and approximately ¾ cup of shredded cheese. Mix until the cheese is coated. Set aside.
In a small pan, over medium heat, melt 1 tablespoon of butter and add the chopped onion and bacon bits. Mix until the onion becomes translucent. 3 to 4 minutes. *NOTE* You can add the onion and bacon directly to the cornbread mixture if you want. I like to warm them up in the pan so the flavor of bacon and onion can be more evenly spread.
Add the onion/bacon mixture to the cornbread mix. Mix until the bacon and onion are coated.
Add the onion powder, salt, and ground pepper and mix until all blend in.
Add the melted butter (1/3 cup), egg, milk, and sour cream. Whisk until all ingredients are incorporated.
Pour the mixture into the prepared pan. Sprinkle the remaining of cheese on top.
Bake in the preheated oven for 25 to 27 minutes or until the edges are set and nice and golden. Note here if you poke a toothpick in the middle and come back not clean, take into consideration you have cheese in the mixture. Serve & enjoy!