Prep all ingredients according to specifications above.
Make the meatballs: In a large bowl, whisk the eggs & milk together, then immerse the breadcrumbs in it & ensure they are fully immersed. Let this mixture sit for 1 to 2 minutes to allow the breadcrumbs to get soaked by the liquids, then add the next 7 ingredients and mix together until well-combined. Gently fold in the ground beef and mix so that all is well-combined. Do not overmix! Form mixture into small meatballs, about .4-.5 ounce each, and arrange them on a large plate or sheet pan and set them aside until you are ready to add them to the soup. (See NOTE below.)
Add the oil, garlic and crushed red pepper to a large pot or Dutch oven (at least 7 quarts) over medium-low heat and cook for 2-3 minutes or until the garlic starts to brown. Then, increase the heat to medium, add the tomato paste and caramelize it for about two minutes.
Add the onions, carrots and celery and continue to sauté until they are mostly softened, about 5-7 minutes.
Carefully pour the broth into the pot, add the parmigiano rind, cover and bring the broth to a light simmer.
One-by-one (so as to not damage/cause the meatballs to clump together) add the meatballs to the broth while gently stirring. Slowly bring the broth back up to a simmer, while stirring occasionally, and ensure that the meatballs are set.
Once the meatballs are set (cooked), gently add the escarole to the broth in batches as the escarole leaves are gradually wilted in the broth.
Partially cover the pot, then simmer the soup until the escarole leaves are tender. Season with salt and black pepper.
Serve piping hot with a generous sprinkle of grated Pecorino Romano cheese. Buon Appetito!