Pat the shrimp dry with paper towels and set aside. Keeping them dry helps them brown instead of steam.
Heat a large skillet over medium heat. Add the olive oil and 1 tablespoon butter.
Add the diced onion and cook for 4 to 5 minutes until softened and lightly golden. Stir occasionally so it cooks evenly.
Add the minced garlic and cook for 30 seconds until fragrant.
Add the rice to the skillet and stir for about 1 minute so the grains get coated with the oil and butter.
Pour in the chicken stock and add ¾ teaspoon kosher salt, ½ teaspoon black pepper, paprika, onion powder, and crushed red pepper flakes. Stir once to combine.
Bring to a gentle simmer, then reduce heat to low. Cover and cook for 15 minutes without lifting the lid.
After 15 minutes, quickly arrange the shrimp over the rice in a single layer. Sprinkle the remaining ¼ teaspoon black pepper over the shrimp.
Dot the top with the remaining 3 tablespoons butter.
Cover again and cook for 5 to 6 minutes until the shrimp are pink and cooked through and the rice is tender.
Turn off the heat and drizzle the lemon juice over the top. Sprinkle with chopped parsley and Parmesan cheese if using.
Let the skillet sit covered for 5 minutes before serving so the rice finishes absorbing moisture.