In a large soup pot, melt 1½ tablespoons of butter over medium heat.
Add the chopped carrots, celery, and onion. Cook for 5 minutes, stirring occasionally, until the vegetables begin to soften.
Add the diced potatoes, chicken broth, thyme, oregano, bay leaf, and a pinch of salt and black pepper.
Bring the mixture to a boil, then reduce the heat to low. Cover and let it simmer for 15 minutes, or until the potatoes start to become tender.
Stir in the corn and diced ham. Continue cooking for another 5–7 minutes, until the potatoes are fully tender.
In a separate saucepan, melt the remaining butter over medium heat. Add the flour and whisk continuously for about 1–2 minutes to create a smooth roux.
Slowly pour in the milk, a little at a time, whisking constantly to prevent lumps. Continue whisking until the mixture thickens and begins to simmer.
Season the cream mixture with a pinch of salt and black pepper. Remove from heat and stir in the heavy cream.
Pour the creamy mixture into the soup pot with the chowder. Stir well to combine everything.
Let the chowder simmer for another 5 minutes, stirring occasionally, until thick and creamy.
Remove the bay leaf and taste, adjusting seasoning if needed.
Serve hot, topped with crumbled bacon and a sprinkle of chopped chives or green onions.
Enjoy!