Place pork into a Dutch oven with onion and garlic, and add water to cover. Bring to a boil, then reduce heat to low and simmer until the meat is cooked through, about 2 hours.
Use rubber gloves to remove stems and seeds from the chile pods. Place chiles in a saucepan with 2 cups of water. Simmer, uncovered, for 20 minutes, then remove from heat to cool. Transfer the chiles and water to a blender and blend until smooth. Strain the mixture, stir in salt, and set aside. Shred the cooked meat and mix in one cup of the chile sauce.
Soak the corn husks in a bowl of warm water. In a large bowl, beat the lard with a tablespoon of the broth until fluffy. Combine the masa harina, baking powder and salt; stir into the lard mixture, adding more broth as necessary to form a spongy dough.
Spread the dough out over the corn husks to 1/4 to 1/2 inch thickness. Place one tablespoon of the meat filling into the center. Fold the sides of the husks in toward the center and place in a steamer. Steam for 1 hour.
Remove tamales from husks and drizzle remaining chile sauce over. Top with sour cream. For a creamy sauce, mix sour cream into the chile sauce.