Mix together masa harina and 2 1⁄4 cups hot water in a large bowl. Cover and let stand for 30 minutes, then stir in up to 8 tbsp. cool water, 1 tbsp. at a time, until dough is as soft as possible without being sticky. Cover with plastic wrap.
Meanwhile, fry pork in a large skillet over medium-low heat until most of the fat is rendered and pork is browned and crisp, about 1 hour. Transfer meat with a slotted spoon to a cutting board, then finely chop and set aside. Pour off and reserve fat from skillet and set aside.
To form a pupusa, roll some dough into a 2" ball. Rub a little reserved fat on the heel of your hand. Press your thumb in the center of the dough ball to make an indentation, then, turning dough in your oiled hand, flatten it with your fingertips into a 4" concave disk about 1⁄2" thick. (It should look like an artichoke bottom.) Fill center with 2 1⁄2 tbsp. pork or cheese or a combination of both. Cup pupusa in your hand, easing dough up and around filling. Pinch dough together to seal. Adding more fat to your hands, pat pupusa into a 4 1⁄2" disk, evening and rounding edges as you work. Repeat process to use up all remaining dough and filling.
Rub both sides of pupusas with a little reserved fat. Fry in a large nonstick skillet over medium-high heat until browned on both sides and hollow-sounding when tapped with a spatula, about 3 minutes per side.