I think Graham is an average starting TE at this point (above average receiver, below average blocker). He's getting paid too much in an absolute sense, but practically it's a little different.
If GB can cut him and sign a player that is better than him for the cost (or less), of his 2019 salary minus the dead cap hit, then absolutely go for it. Otherwise, it's sort of dumb that they gave him that contract, but cutting him makes the team worse and doesn't free up much money.
Another average starting TE is probably going to cost at least $5m per year or whatever the number is, and a draft pick will probably take a year to get up to speed. So I do not see what cutting him accomplishes. There is also the chance that with another year on the team, he'll do better and/or that the new coach will use him better. At this point it's a pretty low risk to find out.
2020 is another story, I believe they can cut him with a minimal cap hit? So unless he turns around and has an awesome year I would expect him to be gone.