Begin by roasting chiles over open flame such as gas stove top until blackened. Alternatively, you can do this in the oven broiler rotating chiles until all sides are blackened. Let chiles cool enough to touch then peel burnt skins off. Remove tops and seeds and chop peppers.
In a large pot, add olive oil, garlic, 1 cup onion and salt over medium heat until fragrant and onions are translucent, about 3-5 minutes. Add cumin and coriander, stirring until sticky, about 1-2 minutes. Add chopped chilies and broth, bring to a boil, then reduce to simmer and cover for 15 minutes. Add in fresh cilantro and stir until wilted. Using an immersion blender, blend sauce until smooth. Alternatively, you can move sauce to blender and blend until smooth and return to pot. Remove heat and stir in heavy cream and sour cream until combined. Add salt to taste.
OPTIONAL: Fry corn tortillas for about 10 seconds each until slightly golden and pliable. This can help the tortillas not to tear and break while rolling. I've tried both frying and not frying tortillas and honestly, I cannot tell a difference taste-wise although the frying can help when rolling.
In a large casserole dish, spread 2-3 tablespoons of sauce on bottom. In a bowl, combine shredded chicken or pork with 1 cup chopped onion and 1 cup shredded cheese and toss together. Fill tortillas one at a time with filling and roll and place into casserole dish. Then cover with remaining sauce and top with 2 cup shredded cheese. Cover and bake for 20 minutes at 350°F. Remove cover and broil for 5 minutes until cheese is bubbling and slightly brown. Enjoy while hot!