Sprinkle the chicken with lime juice, ancho chile powder, and salt. Heat vegetable oil in a large skillet over medium heat. Add the chicken and cook 20 minutes per side, flipping once. Shred the cooked chicken with two forks. Set aside.
In a medium saucepan over medium heat, melt the butter. Add the onions, red bell pepper, and poblano pepper. Cook 5 minutes, stirring occasionally.
Stir in the garlic, cumin, cayenne, ancho chile powder, and flour. Cook, stirring, for 1 minute. Stir in the chicken broth and cook until the mixture has thickened, a few minutes. Stir in the half-and-half and canned tomatoes, cover the pot, turn the heat down to low, and simmer for about 15 minutes, stirring occasionally.
Uncover the pot and stir in the sour cream, lime juice, and ¼ cup of cilantro. Add salt and black pepper to taste. Turn off the heat.
Preheat the oven to 350ºF. Grease a 9x13 inch baking dish.
Heat the vegetable oil in a small skillet over medium heat and cook the corn tortillas for a few seconds on each side, until soft. Wrap in a cloth to keep warm as you continue to cook the rest. Ladle ½ cup of the sauce onto the bottom of the baking dish. Layer half the tortillas along the bottom of the dish on top of the sauce. Add half the chicken, half the remaining sauce, the remaining cilantro, and 1 ½ cups of the grated cheese, mixed. Repeat the layering, finishing with a cheese layer. Cook uncovered for 30 minutes or until brown and bubbling.
Note: If you can't find ancho chile powder, chili powder can be substituted.