Preheat oven to 375°F. Melt butter in a large skillet over medium-high heat. Add onion and next 3 ingredients; cook, stirring occasionally, 8 to 10 minutes or until softened and lightly browned. Stir in garlic, chili powder, cumin, salt, and black pepper; cook, stirring occasionally, 1 minute.
Sprinkle flour over vegetable mixture, and cook, stirring constantly, 1 minute. Whisk in broth, and increase heat to high. Bring to a boil, stirring constantly. Boil, stirring occasionally, 1 to 2 minutes or until thickened. Remove from heat. Stir in tomatoes and sour cream.
Stir together chicken and cilantro in a large bowl; stir in vegetable mixture. Combine both cheeses in a small bowl.
Heat a large cast-iron skillet over high heat. Lightly brush each tortilla on both sides with oil. Cook tortillas, in batches, in hot skillet 1 to 2 minutes each side or until lightly browned and crisp on both sides.
Line bottom of a lightly greased (with cooking spray) 13- x 9-inch baking dish with 6 tortillas, overlapping slightly, to cover bottom of dish. Top with half of chicken mixture and one-third of cheese. Repeat layers once. Top with remaining tortillas and cheese. Lightly coat a sheet of aluminum foil with cooking spray, and cover baking dish.
Bake at 375°F for 20 minutes. Uncover and bake 10 minutes or until bubbly and lightly browned on top. Let stand 10 minutes before serving.
