Heat a large skillet over medium heat and add 2 tablespoons of olive oil.
Season chicken with salt and pepper, and add to the pan. Sauté on both sides until brown, about 5-6 minutes per side, until the internal temp reaches 165F.
Transfer the chicken to a plate, tent with foil, and set aside.
Add 2 tablespoons of butter and the onion to the pan and cook 3-4 minutes. Add the garlic and cook 1 more minute.
Add the wine and chicken stock to the skillet and increase the heat to medium-high, bring it to a simmer, and cook for 3 minutes.
Add the cream cheese and Parmesan cheese and whisk together until thoroughly incorporated, about 2 minutes.
Add the parsley and half-and-half, sauté and stir for 3 minutes. It should thicken up as it cooks.
Fold the spinach into the sauce. Then transfer the cooked chicken breasts to the skillet and simmer for 2-3 minutes until heated through. Flip the chicken in the sauce to coat. If the sauce gets too thick, add a splash or two of chicken stock to thin it out.
Season to taste with salt & pepper if needed, then garnish with chopped parsley and grated Parmesan, and enjoy!
