Preheat your oven to 350°F (175°C).
In a large skillet over medium heat, cook the ground beef, onion, and garlic until the beef is browned and the onion is soft, about 5-7 minutes. Drain any excess fat.
Stir in the chili powder, cumin, salt, and black pepper. Cook for an additional 2 minutes, then remove from heat.
In a separate bowl, mix the refried beans with half of the enchilada sauce.
Spread a thin layer of the remaining enchilada sauce on the bottom of a 9x13 inch baking dish.
To assemble the enchiladas, place a tortilla on a flat surface. Spread about 2 tablespoons of the refried bean mixture and 2 tablespoons of the beef mixture in the center. Sprinkle with a little cheese, then roll the tortilla tightly and place it seam-side down in the baking dish. Repeat with the remaining tortillas.
Once all the enchiladas are in the dish, pour the remaining enchilada sauce over the top and sprinkle with the remaining cheese.
Cover the dish with aluminum foil and bake for 20 minutes. Remove the foil and bake for an additional 10 minutes, or until the cheese is bubbly and golden.
Remove from the oven and let cool for 5 minutes. Garnish with chopped cilantro if desired and serve with sour cream.