Preheat oven to 415 degrees F. Line a large baking sheet with parchment paper.
Toss the eggplant in 2 tbsp of the olive oil and a generous shake of salt and pepper. Spread out evenly on the baking sheet, and roast for 25-30 minutes until edges are beginning to brown and eggplant is fork tender.
Heat the remaining olive oil on medium heat in a large saute pan. Add the onion and garlic and cook, stirring occasionally until onion is translucent, about 2-3 minutes.
Pour in both cans of tomatoes, red pepper flakes, and a generous shake of salt and pepper.
Stir in half the basil, then bring the sauce to a boil. Reduce to a simmer and cook for about 15 minutes, stirring occasionally.
Cook the pasta according to package instructions.
When the eggplant is done roasting, stir it into the tomato sauce.
Drain the pasta once it is done cooking, and stir it into the tomato sauce until everything is well combined.
Top each bowl with fresh basil, parmesan cheese, and a few mozzarella balls.