Preheat oven to 350 degrees F.
Heat 1 tablespoon olive oil in a large non-stick skillet over medium heat.
Sauté the onion in the skillet until translucent. Add in garlic and cook for a minute longer. Transfer the onion and garlic to a small bowl and set aside.
To the skillet add the chopped bacon and cook over medium heat until crisp. Use a slotted spoon to remove the bacon from the pan and transfer it to a paper towel lined plate to drain.
In a large bowl, combine 1-14 ounce can corn (drained) with 1 - 14 ounce can cream style corn, 1- 6 ounce can diced green chiles, garlic and onions, cooked bacon, 1 package corn muffin mix, 4 tablespoons melted butter, 3/4 cup sour cream, 4 ounces cream cheese, and ½ cup cheddar cheese. Mix well.
Pour the corn mixture into a greased 9 x 13 inch casserole dish and bake for 50 minutes or until the top is golden brown.
Sprinkle remaining ½ cup of cheddar cheese on top and bake for 10 minutes longer, or until the cheese is melted.
Allow the corn casserole to stand for about 10 minutes before serving.