Switching Winker and Votto doesn't really solve any problems. The way to solve a lot of defensive problems is to move one of Winker or Castellanos off the roster. Acquire a real RF who can play stick whoever remains between Winker and Castellanos in LF, Shogo in CF, Moose at 1B and Senzel at 2B with Votto at DH. Votto could play 1B occasionally when Suarez, Moose or Senzel need a day off with Moose moving to 2B or 3B (he's probably a better defender at 3b than Suarez). That improves 1B, 2B and RF with the poor defender now manning the least important spot on the field which is LF by far.
As I've said since before the season ended, to me Castallanos is the obvious guy who has to go. Winker is still cheap and gets on base a lot more. Castellanos money could be used to acquire the needed replacement.