Cut chicken breasts in half widthwise to create 4 thinner pieces. Pound each piece to even out thickness. Season both sides with Italian seasoning, garlic powder, salt, and pepper.
In a large pot, heat 2 tablespoons olive oil over medium-high heat. Cook chicken until it’s 160°F all the way through and the juices run clear, about 3 to 4 minutes. Transfer chicken to a plate, cover with foil, and let it rest for 5 minutes. Slice, dice, or shred the chicken.
Without wiping it out, add 1 tablespoon oil and 1 tablespoon butter to the same pot you cooked the chicken in. Add mirepoix; sauté for 5 to 7 minutes. Add minced garlic, chicken bouillon powder, and diced potatoes; sauté for 1 minute.
Pour in chicken broth and bring to a boil. Reduce heat, cover pot, and simmer for 10 to 15 minutes until potatoes are fork tender.
In a separate medium pot, melt 4 tablespoons butter over medium heat. Whisk in flour and cook for 1 minute. Gradually add milk while whisking continuously until smooth. Cook until the mixture thickens, then stir in heavy cream. Keep warm, whisking occasionally.
Pour the milk and cream mixture into the soup. Reduce heat to low. Gradually add shredded cheese, a handful at a time, stirring between additions until melted. Return cooked chicken to the pot. If desired, add frozen peas and stir until warmed. Taste and adjust seasonings as needed.
Enjoy the soup warm, garnished with freshly chopped parsley or thyme. Serve with hearty buttered bread if desired.