Melt butter in a stockpot over medium heat until golden brown. Stir in carrot, celery, onion, ham, and garlic; cook and stir for 5-6 minutes, until the vegetables soften and the onions are translucent.
Stir in flour; cook for about 3 minutes. Stir in chicken broth, 1 cup at a time. Add water and stir to combine. Turn the heat to high and bring to a simmer. Simmer on medium-low for 15 minutes, stirring occasionally.
Taste the soup for salt and add more if necessary. Stir in potatoes; cook for 15 minutes, until potatoes are tender. Skim fat if desired.
With a potato masher, mash the soup a few times, leaving plenty of whole chunks of potato. Season with salt and pepper to taste, add cayenne if desired, and add cream. Stir to combine and heat through. Garnish with fresh chives.