Prepare the Sauce: Place the tomatoes, onion, serrano, and whole garlic cloves (with the skin on) on a baking sheet. Drizzle with olive oil and season with salt and pepper. Broil until charred in spots, about 10 minutes. Set aside to cool slightly for about 5 minutes.
Transfer the roasted vegetables to a blender. Squeeze the roasted garlic out of its skin into the blender. Add ½ cup water, and puree until smooth, being careful not to overfill the blender.
Cook the Sauce: Heat oil in a 12-inch skillet. Pour in the blended tomato mixture. Let it simmer for a few minutes. Add salt or chicken bouillon and epazote sprigs. Cook on medium-low heat for about 15 minutes until the sauce thickens. Remove the epazote before using it.
Prepare the Tortillas: Lightly fry store-bought corn tortillas in hot oil for a few seconds to prevent them from falling apart in the sauce. Place them on paper towels to drain excess oil.
Assemble the Entomatadas: Dip each tortilla into the warm tomato sauce, ensuring it's fully coated. Place the tortilla on a plate, add crumbled cheese, chopped onion, and crema as filling. Fold or roll the tortilla. Repeat the process, placing the filled tortillas neatly on a serving platter.
Garnish: Spoon additional tomato sauce over the entomatadas. Sprinkle more crumbled cheese, chopped onion, and a drizzle of crema on top. Serve the warm.
Optional for Handmade Tortillas: If using fresh, handmade tortillas, skip the frying step. Simply dip them directly into the tomato sauce, assemble with cheese and onions, and garnish as usual.