Heat 2 tbsp olive oil in a large skillet over medium heat.
Add the gnocchi in a single layer.
Cook for 6–8 minutes, stirring occasionally, until golden brown and crispy on the outside.
Transfer to a plate and set aside.
In the same skillet, melt the butter.
Add the chopped onion and cook for 5–7 minutes until softened and lightly golden.
Stir in the minced garlic and cook for 30 seconds until fragrant.
Add the halved tomatoes to the skillet, cut-side down.
Cover with a lid and cook for 5–8 minutes, or until the tomatoes are very soft and the skins begin to loosen and peel away easily.
Remove and discard any large pieces of tomato skin.
Using the back of a spoon or potato masher, gently crush the tomatoes directly in the skillet to create a rustic sauce.
Stir in the Italian seasoning, garlic powder, paprika, red pepper flakes (if using), salt, and black pepper.
Cook for another 3–5 minutes, stirring occasionally, until the sauce thickens slightly.
Pour in the heavy cream and stir well.
Bring to a gentle simmer.
Add the Parmesan cheese and stir until melted and creamy.
Return the crispy gnocchi to the skillet.
Toss gently to coat in the creamy tomato sauce.
Simmer for 1–2 minutes.
Sprinkle the mozzarella cheese over the top.
Cover with a lid for 2–3 minutes until melted and gooey.
Garnish with fresh basil or parsley.
Finish with extra Parmesan cheese and freshly cracked black pepper.
