Rinse the rice under cool water for 60 to 90 seconds, stirring gently, until the water looks much less cloudy. Drain in a fine-mesh sieve for at least 10 minutes.
Heat the oil in a heavy 3 to 4-quart saucepan over medium heat for 30 to 45 seconds. Add the drained rice and toast for 5 to 7 minutes, stirring often, until the grains look dry, opaque in places, and pale golden with a nutty smell.
Stir in the onion for 2 minutes, then add the garlic and cook for 30 seconds.
Pour in the tomato sauce, salt, cumin, oregano, and pepper. Stir for 30 seconds until the tomato coats the rice, then pour in the broth and stir once, scraping up any toasted bits. Bring to a steady simmer over medium-high heat, about 2 to 3 minutes.
Reduce to the lowest heat that holds a gentle simmer, cover tightly, and cook for 18 minutes without lifting the lid or stirring.
Remove from heat and rest, still covered, for 10 minutes. Uncover, let steam escape for 30 seconds, then fluff from the edges inward with a fork. Add cilantro and a squeeze of lime if using.