To make meatballs: combine mince, onion, carrot, parsley, breadcrumbs, feta, egg, salt & pepper in a bowl. Mix well. Using clean hands, roll heaped tablespoonfuls of mixture into balls. Place on a plate. Place flour on a large plate, season with salt & pepper. Roll meatballs in flour to coat.
Heat 2 tablespoons oil in a non-stick frying pan over medium-high heat. Cook meatballs in batches, for 2 minutes or until browned. Transfer to a plate and continue cooking remaining meatballs. Wash & dry frying pan.
To make sauce: Add remaining 1 tablespoon oil to pan and heat over medium heat. Add onion and garlic. Cook, stirring occasionally, for 2 minutes or until onion is soft. Add tomato paste. Cook, stirring for 1 minute. Add tomatoes and stock to pan. Bring to the boil. Reduce heat to medium-low. Simmer for 15 minutes or until sauce thickens slightly. Add meathalls to pan. Spoon over sauce to coat. Cover, Cook for 15 minutes or until meatballs are cooked through.
Meanwhile cook spaghetti in a large saucepan of boiling salted water, following packet directions, until tender. Drain.
Arrange spaghetti in warm serving bowls. Spoon over meatballs and sauce. Top with parmesan and some small basil leaves if desired.