Hayes, who had two assists in the third, tipped a pass at the Philadelphia blue line, went in alone on goalie Joonas Korpisalo, and scored on his own rebound to make it 5-4 at 14:24.
"No actual move (planned)," Hayes said of his breakaway. "I just wasn't going to shoot it. He stopped two (breakaways) earlier on shots. He made the save, and luckily the rebound was right there."
WATCH: [All Blue Jackets vs. Flyers highlights]
James van Riemsdyk had two goals and an assist, and Jakub Voracek had a goal and two assists for Philadelphia (5-3-1), which won its third straight game. Brian Elliott made 22 saves in his third straight start.
"I think we deserved to win this game," Flyers coach Alain Vigneault said. "We were the better team. We had a real strong second period, tied it up, gave up that third goal, gave up an early goal in the third, and our guys just kept playing and just kept battling. Basically, after two periods what we said was we're going to find a way to win this game, and that's what we did."