Preheat the oven to 350°F (175°C). Grease a 9×13-inch baking dish with butter or non-stick spray.
Make the cornbread: In a large mixing bowl, combine the cornbread mix, egg, milk, sour cream, shredded cheddar cheese, and melted butter. Stir until everything is well combined and smooth.
Bake the cornbread: Pour the cornbread batter into the prepared baking dish and spread it evenly. Bake in the preheated oven for about 20–25 minutes, or until the top is golden brown and a toothpick inserted into the center comes out clean.
Let the cornbread cool: Once the cornbread is baked, remove it from the oven and let it cool for about 10 minutes. Then, use a fork to poke holes in the cornbread (this will help the beef layer stick).
For the Beef Layer:
Cook the beef: While the cornbread is cooling, heat a large skillet over medium-high heat. Add the ground beef and cook until browned, breaking it up with a spatula as it cooks.
Season the beef: Once the beef is browned, drain any excess fat, then add the taco seasoning and water. Stir to combine and let it simmer for 5–7 minutes, or until the mixture thickens and is well-coated with seasoning.
Assembling the Dish:
Layer the beef: Once the cornbread has cooled slightly, spread the seasoned beef mixture evenly over the cornbread layer.
Add the cheese: Sprinkle the shredded cheddar cheese and shredded Mexican blend cheese evenly over the beef layer.
Bake the layered cornbread: Return the dish to the oven and bake for an additional 10–15 minutes, or until the cheese is melted and bubbly.
Garnish and serve: Once out of the oven, sprinkle the sliced green onions and salsa over the top. If you like extra heat, add some sliced jalapeños on top, and serve with a dollop of sour cream.