Preheat the oven to 350° F. Prick the eggplant all over with a fork and set it on a baking sheet. Roast in the center of the oven until very soft and collapsed, about 1 hour. Let cool slightly, then scrape the eggplant flesh into a large bowl and let cool completely. If any excess liquid has collected, drain it away. Discard the skin. Break up any especially long and stringy pieces of eggplant into smaller pieces with your fingers.
Meanwhile, in a heatproof bowl, cover the porcini with 1 1/2 cups of boiling water and let stand until softened, 30 minutes; drain, reserving the soaking liquid. Rinse the porcini to remove any grit. Finely chop the porcini.
In an enameled cast-iron or other heavy, nonreactive pot, heat the olive oil until shimmering. Add the onion and half of the garlic and cook over medium heat, stirring, until softened, 5 minutes. Add the tomato puree and pour in the porcini soaking liquid, stopping before reaching the grit; bring to a boil. Simmer over moderately low heat, stirring, until thickened, about 1 hour. Add half of the chopped basil and season with salt and pepper.
Fold the chopped porcini, bread crumbs, eggs, 2 ounces of cheese, parsley and the remaining garlic and chopped basil into the eggplant. Season with 1 teaspoon of salt and 1/2 teaspoon of pepper.
Line a baking sheet with wax paper. Form the eggplant mixture into twenty 1 3/4-inch balls, pressing and rolling tightly. Dust the balls with flour and refrigerate for 20 minutes.
In a large nonstick skillet, heat 1/2 inch of vegetable oil. Add half of the meatballs at a time and cook over moderately high heat, turning occasionally, until browned all over, about 8 minutes. Drain on paper towels. Add the meatballs to the tomato sauce and simmer for 5 minutes (don’t let simmer rapidly or for much longer, or they may start to fall apart). Garnish the meatballs with basil leaves and serve with crusty bread and grated cheese.