Warm the olive oil in a large pot over medium heat.
Soften onion, carrot, and celery with a pinch of salt for 5–6 minutes.
Stir in garlic and tomato paste. Cook until the paste darkens slightly, about 1 minute.
Pour in crushed tomatoes and broth. Add oregano, basil, red pepper flakes, sugar, salt, and pepper.
Bring to a gentle boil, then add orzo. Simmer, stirring often, until al dente, 8–10 minutes.
Stir in heavy cream if using. Adjust seasoning and thin with a splash of broth if needed.
Remove from heat. Let rest 3 minutes, then fold in fresh basil.
Ladle into bowls and finish with grated Parmesan.