In a shallow bowl, combine the garlic, fajita seasoning, grapeseed oil, and cilantro. Toss the steak to coat in the marinade. Cover and marinate for 30 minutes.
Meanwhile, heat a 12-inch cast-iron skillet over medium-high heat. Place the butter, olive oil, and onion in the skillet. Season with the salt, stir, and cook until the edges of the onion are deeply golden yet still a bit firm, about 10 minutes. Add the peppers and cook for 5 to 8 minutes more, depending on how done you want them. Transfer the onion and peppers to a small dish.
Working in two batches, sear the steak on both sides for 3 to 4 minutes on each side. Transfer to a cutting board and let rest for 5 to 8 minutes before slicing into thin strips. Return the strips and any juices from the cutting board to the skillet, squeeze in the juice from the lime wedges, and cook for 3 to 4 minutes more. Remove from the heat and tent with aluminum foil to keep warm.
On a warm tortilla, spread a spoonful of refried beans and top with steak, onions and peppers, avocado spread, Cotija cheese, and more cilantro, if desired.