Heat the olive oil in a large pot or Dutch oven over medium-high heat. Add the garlic, carrots, red onion and rosemary and cook, stirring, until softened, about 5 minutes. Stir in the escarole, beans and their liquid, chicken broth, 2 cups water, 1/2 teaspoon salt and a few grinds of pepper.
Increase the heat to high and bring to a boil. Reduce the heat to medium low and simmer until the vegetables are tender, about 10 minutes.
Gently stir in the meatballs and cook until warmed through, about 5 minutes. Season with salt and pepper. Ladle into bowls and top with parmesan and a few grinds of pepper; drizzle with olive oil.