Heat a medium soup pot over medium heat. Add butter, olive oil, and minced shallot; cook and stir until shallots are softened and translucent, about 2 minutes. Add sage leaves and beans; stir to combine. Add chicken broth and bring to a simmer.
Add garlic and simmer until garlic is soft, about 10 minutes more.
Use a handheld immersion blender if you have one, to puree about half of the soup, leaving a few beans in tact. Be sure to puree the sage leaves; they're pretty potent if you end up with a whole leaf in your mouth.) If you don't have an immersion blender, use a standard blender, pureeing the soup in batches. Because the soup is hot, use a towel to cover the blender instead of the lid. Hot liquids in a lidded blender expand and will splatter out and could burn you.
Once you've pureed your desired amount of soup and poured it back in the soup pot, add the heavy cream, pepper, and salt to taste. Heat until warm enough to serve, but not boiling.
Serve with a generous drizzle of extra virgin olive oil and sprinkle of chives.
Great northern beans work well here too.
Use vegetable broth for a vegetarian version of this soup.