Hannahan added a base hit in three at-bats against the 2010 AL Cy Young Award winner, but it was his fourth trip to the plate that made the difference.
"When you dodge a guy like Hernandez and you're able to win the ballgame, whether you beat him or not, you feel like you did something right," Cleveland manager Manny Acta said.
Hernandez struck out 12 and walked one. He allowed five hits, three in the eighth inning, but ended up with a no-decision.
Indians starter Josh Tomlin just about matched Hernandez. Tomlin tossed eight innings, yielding one run and five hits. He struck out seven, walked none and threw just 96 pitches.
"It was a great a game, both sides," Hernandez said. "The other guy threw a pretty good game, too. It just gets exciting."
Acta said before the game that the key against renowned pitchers like Hernandez is not the hitters, but the starting pitcher keeping it close.
Tomlin (1-1) did just that, with a cutter and an effective changeup that left Seattle hitters leaning all night.
"Obviously, everybody knows that Felix is a stud, and he showed that tonight again," Acta said. "But, you know, I couldn't be prouder than I am of my little cowboy. He went toe-to-toe with Felix for eight innings and that's what we ask these guys when we face guys like Felix.
"Keep us in the game and keep us close up until somebody makes a mistake."
"It's not the type of guy you want to go deep in the counts with, with that split-finger fastball and he's throwing 97 [mph]," Hannahan said.
It was League's first blown save since Aug. 23, also against Cleveland.
Hannahan figured his grounder to the left side was inches from becoming a double play.
"I got my groundball, but obviously it didn't go my way," League said.
Chris Perez got three outs for his fourth save.
The Indians tried to mount a rally in the eighth, too, but couldn't break through. They loaded the bases on three consecutive singles by Hannahan, Jason Donald and Brantley. Donald's hit was a possible double-play ball that glanced off Hernandez's leg. Brantley's grounder went off the tip of Dustin Ackley's glove at second and was kept in the infield.
Hernandez was in trouble for the first time. Seattle manager Eric Wedge went to the mound and chatted with the right-hander, choosing to leave him in despite having Luetge ready in the bullpen.
Hernandez responded by striking out Kipnis and Shin-Soo Choo. Hernandez hopped off the mound, yelled and slapped his glove after his 126th pitch.
Seattle gave Hernandez a slim lead in the fifth. Michael Saunders doubled and went to third on Miguel Olivo's sacrifice. John Jaso hit a hard grounder at second baseman Kipnis, who was pulled in with the rest of the Cleveland infield, and he threw high to home plate. Saunders was safe and Jaso moved to second on the throwing error.
Santana picked up the first hit for the Indians with two outs in the fourth when he hit a 2-1 pitch to left-center for a double. Hernandez already had six strikeouts at that point, and only one prior batter hit the ball out of the infield.
Olivo grounded into a double play with one out and runners on first and third in the second. Mariners third baseman Kyle Seager doubled and Saunders singled, but Olivo's problems at the plate continued. He's hitting just .143.
Hernandez also allowed Hafner's double in the seventh. He went to a 2-1 count on Kotchman before coming back to get an inning-ending strikeout.
Mariners OF Mike Carp was set to play the outfield for Triple-A Tacoma as he works his way back from a sprained shoulder. Indians shortstop Asdrubal Cabrera will fly back to Cleveland on Sunday. Cabrera was placed on the bereavement list, retroactive to Monday, following the death of his grandfather. Relief pitcher Nick Hagadone is likely to be sent down when Cabrera returns, according to Acta. Six players who spent time in the Mariners organization -- Derek Lowe, Cabrera, Choo, Hannahan, Kotchman and Jose Lopez -- are currently on Cleveland's roster.