Well, there are obvious durability concerns. He's only played 100 plus games three times. While the ability to hit a ball about a mile has always been there, doing it on a consistent basis has been his vice. One thing to note that Branyan's career is an example of how batting average is a weak metric for measuring batting performance (and probably cost him a few jobs in the way). Despite an all-time batting average of .234, he's hit for enough power and drawn enough power to have a career OPS+ of 113.
However, based on durability issues, the current economy (can't really give 30 million to anyone these days) and being not that young (contract would cover his age 34-36 years, if I were a GM of a team, I would not be able to sign off on giving Branyan that much money over that much time.
I wouldn't mind having Branyan on my team (say 1-year, 1-million) but not knowing when he'll get injured or when his hot streak starts and ends (there's at least one every year)....Branyan will definitely be one of those players playing to earn the next year's money in any given year.
Would I want him on my fantasy team? Not as a starter, best case scenario would be as a waiver-wire pickup and ride a 3-week hot streak. In general though, that low batting average hinders his fantasy value making him more valuable on a real team than a fantasy team.