Combine 1/4 cup olive oil, garlic, onion, tomatoes and 2 tablespoons chopped basil in a large saucepan; bring to a boil. Season with salt and pepper. Reduce heat and simmer gently for at least 40 minutes.
While the sauce simmers, combine beef mince, crumbs, eggs, Parmesan cheese, parsley and 3 tablespoons olive oil in a large bowl. Mix well with clean hands and shape into 20 walnut-size meatballs. Heat a large frypan over medium-high heat; fry meatballs until browned and cooked though, about 10 minutes. Add the meatballs to the tomato sauce and simmer gently while boiling the pasta.
Bring a large pot of salted water to a boil; stir in spaghetti. Cook the pasta until it has cooked through but is still firm to the bite, about 12 minutes. Drain well. Carefully toss the spaghetti with the sauce and meatballs. Serve, sprinkling each plate with fresh basil and Parmesan cheese.