Preheat broiler. Place onion, garlic, tomatoes, red bell pepper, chili powder, paprika, oil, ½ tsp salt, and ¼ tsp on a large sheet pan. Toss together. Broil for 2-4 minutes, or until softened and charred.
Place contents of the sheet pan into a blender. Add chili pepper and cilantro. Blend until smooth.
Preheat oven to 350°. Butter a large casserole dish or 9x13-inch pan. Pour salsa roja from the blender into a shallow bowl.
Lightly grease a cast-iron skillet with oil or nonstick spray and place over medium heat. When skillet begins to lightly smoke, heat tortillas one at a time for 10-15 seconds per side then wrap in a towel to keep warm. (Alternatively, wrap half of the tortillas in a damp paper towel and microwave for 20-30 seconds. Repeat with the other half, then keep them warm with a towel.)
Working one at a time, dip tortillas in salsa, place on a plate, and fill with meat, beans, and queso fresco. Roll into cylinders and place seem side down in the prepared pan.
Top enchiladas with remaining salsa and sprinkle with shredded cheese. Cover with foil and bake for 15 minutes. Remove foil bake for an additional 10-15 minutes, until cheese is melted.
Allow to cool for 5-10 minutes before serving. Garnish with sour cream, hot sauce, and cilantro, if desired.