In a small bowl, mix 2 tablespoons of oil with 1 cup of water. Set aside to prevent the dough from sticking and to keep it hydrated.
In a large bowl, combine the masa harina and chicken bouillon (or salt). Add the warm water and melted butter (or oil) and mix until a soft, playdough-like dough forms that releases from the bowl and does not stick to your hands.
If the dough is too dry, add warm water 1 tablespoon at a time. If too sticky, add masa harina 1 tablespoon at a time. Cover with plastic wrap or a damp towel and let rest for 15–20 minutes. Line a rimmed baking sheet with parchment paper.
Heat the bacon in a 10-inch nonstick skillet over medium-low heat until the fat renders and the bacon is crisp, 7–10 minutes, flipping halfway through. Remove bacon and reserve.
Increase the heat to medium, add the onion to the bacon fat, and cook until lightly browned, 5–7 minutes. Add the garlic and cook until fragrant, about 30 seconds.
Add the rinsed beans, chicken bouillon, and water. Bring to a simmer and cook, mashing with a potato masher, until mostly smooth, about 5–7 minutes. Crumble the reserved bacon and stir into the beans.
Remove from heat and let cool completely. Once cooled, add the Monterey Jack cheese and mix well. Divide the filling into 19 balls (about 43 g / 1.5 oz each), place on the prepared baking sheet, and cover with plastic wrap.
Knead the dough briefly, about 15–20 seconds. Flatten a small piece to test hydration; if cracks larger than ¼ inch appear, add warm water 1 tablespoon at a time until soft.
Shape the dough into a large ball and divide into 19 equal pieces (about 83 g / 3 oz each). Moisten your hands with the oil mixture, roll each piece into a ball, and place on the baking sheet. Cover with plastic wrap or a damp towel.
Rub your hands lightly with the oil mixture. Create a well in a dough ball, place one filling ball inside, and enclose the filling with the dough.
Gently press between your palms to form a uniform ¼-inch-thick disk. Use more oil mixture as needed to prevent sticking.
Alternatively, place a dough ball inside a cut zipper-lock bag, flatten to a 4-inch circle, add the filling, seal, and flatten again to 4 inches.
Heat 1 teaspoon of oil in a nonstick skillet over medium-high heat and wipe out excess oil. Cook 4 pupusas at a time until golden, about 4 minutes per side. Repeat with the remaining pupusas. Serve warm with salsa and curtido.
Place the tomatoes, onion, serrano pepper, and 2 whole garlic cloves on a baking sheet. Drizzle with oil, season with salt and pepper, and broil until charred in spots, about 10 minutes. Cool for 5 minutes, then peel the garlic.
Transfer the roasted vegetables to a blender and blend until smooth, working in batches if needed.
Alternatively, bring a pot of water to a boil. Add the serrano peppers and cook for 5 minutes. Add the tomatoes, 1 garlic clove, and onion, and cook until the tomato skins split, about 1–2 minutes. Cool slightly.
Blend the serranos, onion, cooked garlic, 1 raw garlic clove, and 2 cups of water (or the tomato cooking water, if using the boiling method) until smooth. Add the tomatoes and pulse for a slightly textured salsa.
Heat 2 tablespoons of oil in a saucepan over medium heat. Add 1 garlic clove and cook until lightly golden, then discard. Add the blended salsa, oregano, black pepper, and salt.
Bring to a boil, reduce the heat, and simmer for 15–20 minutes, stirring occasionally. Adjust seasoning to taste.