Heat a large skillet over medium-high heat.
Add the ground beef and cook for 5–7 minutes, breaking it apart as it cooks.
Drain excess grease if necessary.
Add the diced onion and cook for 3–4 minutes, until softened.
Add minced garlic and cook for about 30 seconds.
Stir in chili powder, cumin, paprika, oregano, salt, and black pepper.
Cook for another minute until the spices become fragrant.
Stir in the salsa and cook for 1–2 minutes.
Reduce the heat to medium-low and add the refried beans.
Stir until the beef and beans are fully combined and heated through. If the mixture is too thick, add a tablespoon or two of water or extra salsa.
Warm the tortillas in a dry skillet for about 15–20 seconds per side or microwave them under a damp paper towel for 20–30 seconds.
Place one warm tortilla on a clean surface.
Add about ½ cup of the beef and bean mixture slightly below the center.
Add cooked rice if using.
Sprinkle with cheddar and Monterey Jack cheese.
Add tomatoes, lettuce, red onion, and any other desired toppings.
Fold the bottom edge over the filling, fold both sides toward the center, then tightly roll the tortilla upward.
Place the burrito seam-side down.
For a crispy finish, lightly toast the burrito in a skillet over medium heat for 1–2 minutes per side.
Serve warm with sour cream, salsa, cilantro, and lime wedges.