Cook the pasta: Bring a large pot of salted water to a boil. Cook the pasta according to the package directions until al dente. Reserve about ½ cup of pasta water before draining.
Season the chicken: Cut the chicken into bite-sized pieces and season with salt and black pepper.
Brown the chicken: Heat the olive oil in a large skillet over medium-high heat. Add the chicken and cook for about 5 to 7 minutes, stirring occasionally, until golden and cooked through. Transfer it to a plate.
Cook the onion: Reduce the heat to medium and add the chopped onion to the same skillet. Cook for 2 to 3 minutes until softened.
Add the garlic: Stir in the minced garlic and cook for about 30 seconds until fragrant.
Add the tomatoes: Pour in the crushed tomatoes and stir to combine.
Season the sauce: Add the Italian seasoning, black pepper, and red pepper flakes if using.
Simmer the sauce: Let the tomato sauce gently simmer for about 8 to 10 minutes, stirring occasionally so the flavors can develop.
Return the chicken: Add the cooked chicken back to the skillet and stir it into the tomato sauce.
Add the pasta: Add the drained pasta and toss everything together until well coated.
Adjust the consistency: Add a small splash of reserved pasta water if the sauce feels too thick.
Add Parmesan: Stir in the Parmesan cheese and let it melt into the warm sauce.
Taste and adjust: Add more salt, pepper, or Parmesan if needed.
Finish and serve: Top with fresh basil and extra Parmesan if desired, then serve warm.