It seems like Gomez really wanted the move to Fiorentina. There were other offers reported (including Juventus, Napoli and I think Rummenigge said there were offers from England as well without specifying clubs though). Gomez wanted to be the main man, he didn't want a move to another top club where he had to fight for the starting spot. He just wants to enjoy playing, he wants to be loved by the fans. It wasn't about money or winning trophies for him. I think it got to him that he's not really loved in Germany, he was always criticised (imo very often way over the top) by german media and by the fans at Bayern and when he played for the german nationalteam.
I think he's a quality option to have in the squad at any top team, I would have loved him to stay at Bayern, he offers something different up front. But with the way football changed over the last years, most likely he won't start in the most important games for the best teams, so I understand his move to Fiorentina. He's won it all now with Bayern, top scorer in the league, league titles, cups and the CL. Why not simply enjoy playing now? I wouldn't be surprised if Arsenal called his agent (he's a clear upgrade to Giroud) but were told he won't move to England. Fiorentina fans are really excited about him and the club has a successful history with german players. It's a good fit for him.