In a medium bowl, whisk together orange juice, soy sauce, lemon juice, olive oil, lime juice, garlic, 1 teaspoon chili powder, 1 teaspoon cumin, paprika, oregano, black pepper, and chipotle (if using), then stir in chopped cilantro.
Place the steak in a gallon-size plastic bag or a glass container and pour the marinade over it, ensuring the meat is coated; seal and refrigerate for at least 4 hours or up to 24 hours, flipping once halfway through.
Position the oven rack about 4 inches from the broiler and preheat the broiler on high; line a heavy-duty baking sheet or roasting pan with foil.
Broil the steak 4–6 minutes per side, until the internal temperature reaches 135°F for medium-rare or 145°F for medium; remove and let rest 5–10 minutes before slicing thinly across the grain.
While the steak cooks or rests, heat 1 tablespoon vegetable oil in a large skillet over medium-high heat; add the sliced onion and bell peppers.
Sprinkle the vegetables with 1/4 teaspoon ground cumin, 1/4 teaspoon chili powder, and salt and pepper to taste; cook, stirring occasionally, 4–8 minutes until edges are lightly charred and vegetables are tender-crisp. Reduce heat to medium if they are browning too quickly and cook to desired doneness.
Warm the tortillas, then assemble fajitas with sliced steak and sautéed vegetables; top with sour cream, guacamole, and pico de gallo if desired, and serve.