Melt the light butter in a large soup pot over medium heat.
Add the diced onion and cook for 3–4 minutes, until softened. Add the garlic and cook for another 30 seconds.
Add the diced potatoes and chicken broth. Bring to a boil, then reduce the heat and simmer for about 10–12 minutes, or until the potatoes are tender.
Stir in the cooked chicken and diced ham.
In a small bowl, whisk together the skim milk and cornstarch until completely smooth.
Slowly pour the milk mixture into the soup while stirring. Add the Dijon mustard, thyme, onion powder, and black pepper.
Simmer for 3–5 minutes, stirring occasionally, until the soup thickens slightly. Do not let it boil rapidly after adding the milk.
Reduce the heat to low and stir in the Swiss cheese and Parmesan until melted and creamy.