Slice the tops off all 4 peppers and scoop out the seeds and white membranes inside. Chop up the pepper tops and set them aside — you'll use these in the filling.
Heat olive oil in a large skillet over medium-high heat. Add the chopped onion and minced garlic, then cook for about 2 minutes until they smell amazing and start to soften.
Add the ground beef to the skillet and break it up with a wooden spoon. Cook for 5-7 minutes until it's completely browned and there's no pink left anywhere.
Stir in the smoked paprika, ground cumin, salt, and black pepper. Mix everything together so the spices coat all the beef. This takes about 30 seconds but makes a huge difference.
Add the cooked rice, tomato sauce, chopped pepper tops, and water to the skillet. Stir everything together until it's combined and looks like a thick, chunky mixture. This is your filling.
Spoon the filling into each hollowed-out pepper, packing it down gently so it fills the whole thing. You want them stuffed but not bursting at the seams.
Sprinkle 2 tablespoons of mozzarella cheese on top of each stuffed pepper. The cheese gets melty and golden and honestly just makes everything better.
Pour about 1/4 cup water around the peppers in the skillet (not on top of them, around them). This creates steam that cooks the peppers from the outside.
Cover the skillet with a lid and reduce heat to medium. Simmer for 15-18 minutes until the peppers are fork-tender and the cheese on top is melted and slightly browned.
Take the skillet off the heat, let it sit for 2 minutes, then carefully transfer the peppers to plates. Spoon any extra filling from the bottom of the skillet over the top.