Yucatecans roast lots of their vegetables, usually on a griddle since ovens with broilers are not common. I've described the traditional method for the tomatoes, then given you the simpler, more controlled broiler method.
Replacing fresh tomatoes with good-quality canned is an option (you'll need a 28-ounce can); you'll miss the roasty flavor, but the sauce is certainly worth making.
- Roast the tomatoes. The griddle method: Line a griddle or heavy skillet with aluminum foil and heat over medium. Lay the tomatoes on the foil and roast, turning several times, until blistered, blackened and softened, about 10 minutes. Don't worry if some of the skin sticks to the foil.
The broiler method: Lay the tomatoes on a baking sheet and place about 4 inches below a very hot broiler. Roast until blistered and blackened on one side, about 6 minutes; flip the tomatoes and roast the other side. Cool, then peel, collecting any juices with the tomatoes. Coarsely puree tomatoes and juices in a food processor or blender.
- Make the sauce. In a medium-size (2 to 3-quart) saucepan, heat the lard or oil over medium. Add the onion and fry until deep golden, about 8 minutes. Add the tomatoes and chile halves and simmer 15 minutes or so, stirring often, until nicely reduced but not dry (it should be an easily spoonable consistency). Taste (it will be wonderfully picante and nicely perfumed), season with salt, remove the chile if you want, and it's ready to use.
Advance preparation: Covered and refrigerated, the sauce will keep for several days; it also freezes well.