Melt 2 tablespoons butter in a large skillet over medium high heat. Add chicken and cook, flipping once, until cooked through, about 4-5 minutes on each side. Set aside and keep warm.
Melt remaining 4 tablespoons butter in the skillet. Add garlic and shallots, and cook, stirring frequently, until fragrant, about 2 minutes.
Stir in spinach until it begins to wilt, about 2 minutes.
Stir in wine and cook, stirring occasionally, until reduced by half, about 5 minutes.
Gradually whisk in heavy cream, sour cream and Parmesan until slightly thickened, about 3-4 minutes; season with salt and pepper, to taste.
Serve chicken immediately topped with spinach mixture, garnished with tomato and parsley, if desired.
Notes
*Chicken stock can be used for white wine as a non-alcoholic substitute.