I think that Hayward had originally decided he would leave Utah a year or more ago. That season when the Jazz missed the playoffs by a single game might have been the final straw in his mind. The Jazz then challenged that decision with the moves they made and the progress they made in the last season, but it wasn't quite enough. I'll explain below.
Here is the main reason Gordon left Utah, imo:
Gordon wants to be a top-tier player and wants to be viewed as a top-tier player. He sees himself that way, while the rest of the world doesn't quite. He wants to be more visible, on national TV more, so that people will stop underrating him as a player. This is especially important in the playoffs where every game is nationally televised and players earn their stripes. Winning an extra round in the Eastern Conference is important to build this perception, even if he never makes it to the NBA Finals. For a player who cares about his brand, being in a bigger TV market can make a big difference. I'm sure Kobe Bryant would have told him this when they worked out together (although it's obvious).
I think this is what tipped the scale. Whether Gordon is good enough to make this happen remains to be determined. He might have a bad game and get roasted by the media in Boston.
And the other reason, related to the first reason:
Gordon Hayward was a late addition to the All Star team last year. Now add a healthy Chris Paul, Paul George, Jimmy Butler and a surging Damian Lillard in the Western Conference, along with up-and-coming talent (not to mention his own teammate Rudy Gobert) and it's possible Hayward doesn't make the team in the next two years. That's important to him.
Going east gives him a better opportunity to reach his personal goals, regardless of team win totals. It's about what's best for Gordon.
Would Paul Millsap have become an All Star in the Western Conference? After Pau Gasol and Lamar Odom destroyed him in consecutive seasons, the Jazz were ready to let him walk.