01 - Heat olive oil in a large skillet over medium heat. Add onion and cook until softened, about 3 minutes. Stir in garlic and cook for 30 seconds.
02 - Add ground beef to the skillet and cook, breaking it up with a spatula, until browned and fully cooked, about 5 to 6 minutes. Drain excess fat if necessary.
03 - Mix in cumin, chili powder, smoked paprika, salt, and black pepper. Cook for 1 to 2 minutes until aromatic, then remove from heat.
04 - In a small bowl, combine refried beans with lime juice and chopped cilantro.
05 - Place tortillas on a flat surface. Spread 2 tablespoons of the bean mixture over half of each tortilla. Layer beef mixture on top, then evenly sprinkle with both cheeses.
06 - Fold tortillas in half, enclosing the fillings completely.
07 - Preheat a large nonstick skillet or griddle over medium heat. Lightly brush the outside of each quesadilla with softened butter.
08 - Cook quesadillas in batches for 2 to 3 minutes per side until golden brown and cheese has melted. Remove and rest for 1 minute before slicing.
09 - Serve warm with salsa, sour cream, sliced jalapeños, and fresh cilantro as desired.