3/4 pound ground meat (chicken, turkey, pork, beef, veal, or a combination)
1/2 cup dry bread crumbs or panko
3 large eggs
1/2 cup grated Romano cheese, divided
1/2 cup grated Parmesan cheese, divided
1 tablespoon chopped fresh oregano (or 1 teaspoon dried oregano)
1 teaspoon salt
1/2 teaspoons freshly ground black pepper
3 tablespoons olive oil, divided
1 medium yellow onion, diced
4 cloves garlic, minced
8 cups chicken stock
1 bunch greens (such as escarole) trimmed and torn into bite-sized pieces (about 6 lightly packed cups)
Red pepper flakes, optional
Lemon wedges, optional
Combine the ground meat, bread crumbs, 1 egg, 1/4 cup of each cheese, oregano, salt and pepper in a bowl. Mix thoroughly, then form the mixture into 3/4-inch to 1 1/2-inch balls. You should have 20 to 30 meatballs, depending on how large you form them.
In a large skillet, heat 2 tablespoons olive oil over medium high heat. Add the meatballs in batches and cook, turning, until browned all over, 3 to 5 minutes. (If they are still a bit pink in the middle, don’t worry; they will continue to cook in the broth.) Set them aside on paper towels or a paper bag to absorb excess oil.
In a 4- to 6-quart soup pot, heat the remaining 1 tablespoon oil over medium high heat. Add the onion and garlic and sauté until the onions are tender and the garlic is soft, but not browned, about 5 minutes. Add the stock and bring to a boil. Add the greens, reduce the heat to low, cover, and simmer for 10 minutes. Add the meatballs and cook another 5 minutes.
Meanwhile, combine the remaining 2 eggs and remaining cheeses in small bowl and stir with a fork to blend. Slowly pour the egg mixture into the simmering soup, stirring constantly. Cover and simmer just until egg bits are set, about 30 seconds. Season to taste with salt and black pepper, maybe even a pinch of red pepper flakes and a squirt of lemon juice. Serve immediately.
Leftovers will keep in a sealed container in the refrigerator for up to 3 days. To re-heat, simmer gently over low heat.