Incentives like you describe are, by rule, not allowed. They cannot pay a player more if he hits .300 or has an OPS of .900. Those kind of deals aren't allowed, and so they're not sought. Players can get incentives for games played, games started, innings, and games finished, and at-bats. For example, both Wainwright and Wieters have incentives built into their contracts for the number of games they've played, number of starts they make. But Wainwright isn't getting a bonus for every 10 wins and Carlos Martinez isn't getting bonuses for every 20 saves.
There are bonuses for awards and All-Star appearances, but those are governed as well for how they can be written, and that's not a loophole into what you suggest.
The union would not want that structure.
What you describe only exists truly in the arbitration process, where players are paid based on their platform year and their past performance. They get three or four years in the arbitration process and then qualify for free agency. While arbitration has done what free agency isn't in recent years -- rewarding performance, paying players like Kris Bryant when his production warrants it -- it's still suppressed payment because it's not an open market. Bryant would be making more if all teams had a chance to bid on him year to year.
I'm suggesting that by comparison Heyward's deal doesn't look to bad. Checkout what David Price has done on his deal, or Stanton is doing this year as one of the highest paid Yankees. Scherzer's is the best of the group, but Heyward's is turning out better than expected.