Heat the skillet: Place a large skillet over medium-high heat.
Add 1 tablespoon oil and let it shimmer.
Brown the beef: Add the ground beef, breaking it up with a spatula. Season with salt and pepper. Cook until browned with crisp edges, 5–7 minutes.
Transfer beef to a bowl and drain excess fat if needed, leaving about 1 tablespoon in the pan.
Sauté aromatics: Add the remaining oil if the pan looks dry. Stir in the onion and cook until translucent, about 3 minutes. Add the garlic and cook 30 seconds, stirring so it doesn’t burn.
Season it up: Sprinkle in Italian seasoning, smoked paprika, and red pepper flakes if using.
Toast the spices for 20–30 seconds to wake up the flavors.
Wilt the spinach: Add the spinach in batches, tossing until it wilts down. This takes 1–2 minutes. Don’t worry if the pan looks full—the spinach shrinks quickly.
Bring it together: Return the beef to the skillet.
Pour in the heavy cream and stir. Let it simmer on medium-low for 2–3 minutes until slightly thickened.
Add the cheese: Stir in mozzarella until it melts and coats the beef and spinach. Finish with Parmesan for extra depth.
Taste and adjust salt and pepper.
Finish and serve: Squeeze a little lemon over the skillet to brighten the flavors. Garnish with parsley or chives. Serve hot as is or with cauliflower rice or zucchini noodles.