If using more than one cheese, blend the cheeses together.
Melt butter in large skillet over medium heat. Add tomatoes, bell pepper, onion, and garlic with a pinch of salt and pepper. Cook for 5-7 minutes until slightly tender.
Add the ground beef and taco seasoning to the skillet. Using a wooden spoon, break the beef into small pieces and mix it into the veggies. Cook the beef for about 5 minutes until it is browned, continuing to break it into small pieces as it cooks.
Stir in the refried beans until completely blended into the beef and vegetables. Spoon the entire mixture into a large bowl, and cover the bowl with foil to keep it warm.
Lay one tortilla into the now empty skillet. Sprinkle 1/2 cup of cheese across the surface of the tortilla. Spoon 1/2 cup of the beef mixture onto one side of the tortilla, then spread it to cover the cheese across half of the tortilla.
Once the cheese is melted on the other half of the tortilla, carefully fold that half onto the beef mixture. Use a spatula to gently press down on the top of the folded tortilla. Cook for 2 minutes until the bottom is browned and crispy.
Carefully flip the tortilla. Cook for another two minutes until the bottom side is browned and crispy. Transfer the quesadilla to a cutting board, and allow it to cool for about 30 seconds. Use a pizza cutter or sharp knife to cut it in half.
Repeat with remaining two tortillas, remaining cheese, and remaining beefy mixture.
Serve hot and top with sour cream, pico de gallo, guacamole, or your favorite toppings!