Step 1Slice off the top of each tomato and reserve. Using your fingers, extract as many seeds from the base of each tomato as possible. Hollow out the centers, leaving only a shell (a grapefruit spoon works well). Coarsely chop the pulp, place it in a strainer and set over a bowl to drain. Place the shells cut-side down on paper towels to drain.
Step 2Heat 2 tablespoons of the oil in a skillet. Add the onion and garlic and cook on medium-low heat until soft, about 5 minutes. Add the chopped tomatoes and turn the heat to medium. Cook 5 minutes longer, stirring occasionally. Season liberally with salt and pepper. Remove from the heat and cool completely.
Step 3Heat the oven to 350 degrees.
Step 4Transfer the tomato mixture to a mixing bowl. Crumble the sausage and add to the bowl along with the bread crumbs and basil. Mix well.
Step 5Brush 1 tablespoon of the oil over the bottom of a baking dish large enough to hold the tomatoes without crowding. Place the tomato shells in a dish cut-side up and season the inside of each with salt and pepper. Divide the sausage filling among the tomatoes, packing gently. Drizzle with the remaining tablespoon of oil. Place the reserved tomato tops over the filling.
Step 6Bake until the stuffing is cooked through and the tomatoes are soft but not falling apart, 30 to 35 minutes. Serve hot or warm.