Add the basil, spearmint, parsley, garlic, the roughly chopped onion, and ¼ cup of the olive oil to a food processor. Pulse until finely chopped.
In a large bowl, combine the ground beef and pork, eggs, ½ cup of the parmesan, ¾ cup of the breadcrumbs, the herb mixture, cumin, oregano, red pepper flakes, and 2 teaspoons of sea salt. Mix gently without overworking the meat. If the mixture is too wet to hold its shape, add more breadcrumbs, up to 1 cup total. With lightly wet palms, shape into 1½-inch meatballs.
Heat the remaining ¼ cup of olive oil in a large Dutch oven over medium heat until shimmering. Brown the meatballs 3 or 4 at a time, 2 to 3 minutes per batch, turning to brown all sides. Transfer to a plate and repeat with the rest.
Add the diced onion, season with a pinch of salt, and cook for 2 minutes, stirring and scraping up the browned bits from the bottom of the pot.
Return the meatballs to the pot and add the stock. Bring to a gentle boil, then reduce the heat to an active simmer. Cook, stirring gently now and then, 8 to 10 minutes, until the meatballs reach 160°F (71°C) inside.
Stir in the remaining ½ cup of parmesan and the pasta. Simmer until the pasta is tender, following the package time.
Stir in the lemon juice and zest. Season with salt and pepper to taste. Ladle into bowls, top with fresh herbs and red pepper flakes, and serve with lemon wedges and crusty bread.