Heat oven to 350°F. Butter 9x13-inch baking dish.
In large pot, bring 4 quarts water to a boil; add pasta. Stir, return to boil, and cook until al dente, about 8 to 10 minutes. Drain well.
In large skillet or Dutch oven, sauté beef and onion over medium heat until browned, about 5 minutes. Drain well. Stir in garlic and taco seasoning. Add corn, tomatoes, beans, tomato sauce, green chilies, salt and pepper. Bring to boil. Salt and pepper to taste.
Reduce heat; simmer 5 minutes. Stir in cream cheese, 1 cup cheddar 1 cup pepper jack and simmer until melted and smooth. Add pasta, stirring until evenly coated. Pour into baking dish; top with remaining cheddar and pepper jack cheese.
Bake until golden brown and cheeses are melted, about 20 to 25 minutes. Let stand 5 minutes before serving. Top with sour cream and scallions, if desired.
Unbaked mac and cheese may be made ahead and refrigerated. Add 5 to 10 minutes to baking time.