Pat roast dry with paper towels. Heat oil in a large heatproof pot over high. Cook chuck roast, turning occasionally, until browned on both sides, 5–7 minutes per side. Transfer to a plate.
Place a rack in lower third of oven; preheat to 250°. Cook onion, bell peppers, and salt (plus 2 Tbsp. oil if using flank steak), stirring occasionally, until softened and beginning to brown, 12–14 minutes. Add garlic and cook, stirring frequently and scraping bottom of pan, until vegetables are golden brown, 3–5 minutes. Stir in wine and cook, stirring occasionally, until evaporated. Stir in paprika, oregano, cumin, black pepper, and cayenne until vegetables are coated; continue to cook, stirring, until spices are fragrant, about 1 minute. Add tomatoes and coarsely break up with a spoon (they’ll continue to break down as they cook). Bring to a boil and cook, stirring occasionally, until liquid is reduced by half, about 5 minutes. Nestle roast into tomato mixture and tuck in bay leaves on either side. Cover and transfer to oven. Braise roast and vegetables until meat is very tender and shreds easily, 2½–3 hours. Let cool 15 minutes. Skim excess fat from sauce; discard bay leaves. Using a potato masher or 2 forks, tear and smash beef into sauce until it’s shredded and incorporated into sauce. Stir in olives and vinegar. Divide ropa vieja among plates. Top with cilantro. Serve with rice, maduros, and beans alongside.