Heat oil in a large pot over medium-high heat.
Add carrot; cook, stirring often, until softened, about 2 minutes.
Add cabbage and leek; cook, stirring often, until softened, about 4 minutes.
Add garlic; cook, stirring constantly, until fragrant, about 1 minute.
Add broth, beans and salt; increase heat to medium-high and bring to a boil.
Reduce heat to medium and stir in chicken.
Simmer, covered, until the cabbage is tender and an instant-read thermometer inserted in the thickest part of the chicken registers 165°F, about 8 minutes.
Remove from heat and stir in vinegar.
Ladle into 6 bowls; top each with 1 tablespoon pesto.
