Preheat the oven to 425 degrees F.
Cut the tops off of the garlic heads to expose the cloves. Drizzle with EVOO and sprinkle with salt and pepper before wrapping in foil. Roast until soft, 40 to 45 minutes.
Meanwhile, heat the EVOO in a soup pot over medium-high heat and brown the guanciale, about 3 minutes. Stir in the bay leaves, rosemary, thyme, celery, carrots and onions and sprinkle with salt and pepper. Cook, partially covered, stirring occasionally, until the vegetables are soft, 10 to 15 minutes. Pour in the stock and bring to boil, then reduce the heat to a simmer.
Place 1 cup of the soup in a blender or food processor with the roasted garlic cloves, along 1 tablespoon of the tomato paste and half of the cannellini and garbanzo beans. Process until smooth, adding water if the soup is too thick to blend. Transfer back into the soup pot and stir to combine, adding the remaining whole beans.
Bring the soup back to a bubble. Add the veal and escarole and cook until the greens are wilted. Season with a few grates of nutmeg. Cook the pasta in the soup.
Top bowls of soup with cheese, an extra drizzle of EVOO and celery leaves and onions, if using.
If you're serving the soup over the course of hours or multiple days, cool and store the soup without making the pasta. Just before serving, cook the pasta separately to al dente and add to the reheated soup.