Money isn't the only thing that talks. That's absurd. Playing time talks. And future money talks. You want to limit your earning potential for years beyond 2019? Here's a real quick way to do that: Don't play. Find a team that will plant you on the bench, let you rust, and then let you go. Having talked to several catchers about this situation, I know how they feel: Being Yadier Molina's backup means never playing, and never playing means never getting a chance to show what you can do (even as a backup), and that means when you become a free agent inevitably as the Cardinals go in a different direction, there aren't any offers. Take a look at the track record. Gerald Laird came to the Cardinals with a 6.7 WAR in his career and was in his age 30 season. He was Molina's backup. He had four more seasons after that, never made more than $1.5 million and was a 0.1 WAR player in those season before leaving baseball at a younger age than Molina is now. Granted he was older and did not have the WAR that Laird had pre-backup days, but Gary Bennett took less to go to the Dodgers after his stint with the Cardinals and that was his final year in the game. See what I'm getting at?
This isn't accepting the move at face value. This is understanding the market and how it works and talking with catchers who are reluctant to not play. Look, the Cardinals can go to a catcher and say, "Hey, we will double your best offer to come and sit on the bench here." Maybe somebody takes that. But then the Cardinals are paying twice the market value for a zero return, and that catcher is always understanding that he's making as much in one year as he would make in two years because, news flash, sitting around for year might not mean much in that second year.
Money talks, for sure. But it doesn't say what you suggest.