In a large resealable plastic bag, combine lime juice, garlic, oregano, cumin, and cayenne pepper (if using). Add the steak, turning to coat. Seal the bag and refrigerate for at least 2 hours or overnight.
Preheat a grill or grill pan to medium-high heat. Remove the steak from the marinade, letting any excess liquid drip off. Grill the steak for 5-7 minutes per side, or until it reaches your desired level of doneness. Transfer the steak to a cutting board and let it rest for 5 minutes before slicing it thinly against the grain.
In a large skillet, heat 1 tablespoon of oil over medium-high heat. Add the sliced onion and cook for 3-4 minutes, or until it starts to soften. Add the sliced bell peppers and cook for an additional 4-5 minutes, or until the vegetables are tender. Add the diced tomatoes and cook for 1-2 minutes, or until they start to release their juices.
In a large cast iron skillet or griddle, warm the flour tortillas over medium heat for 30-60 seconds on each side. This will give them a nice char and make them more pliable.
Assemble the fajitas by slicing the grilled steak into thin strips and adding it to the skillet with the vegetables. Cook for 1-2 minutes, or until the steak is heated through. Serve the steak and vegetables with warm flour tortillas, and offer your choice of toppings such as avocado, sour cream, and salsa.