Hackett stopped 47 shots and Chris Terry chipped in two goals and one assist as the Plymouth Whalers snapped the Windsor Spitfires' 14-game winning streak with a 4-2 victory.
Werek scored with four seconds left in regulation to lead the last-place Kingston Frontenacs to a stunning 3-2 victory over the London Knights.
The Spitfires (43-6-0-1), the Canadian Hockey League's top-ranked club, had not lost since falling on home ice December 18 against Kitchener. Windsor has dropped two of three visits to Plymouth, Mich., this season.
Hackett, a former Spitfire, made several key stops, including short-handed breakaways by Scott Timmins and Taylor Hall, both among the OHL's Top 5 scorers this season. Hackett's work helped Plymouth kill off all ten Spitfire power plays.
The victory, coupled with Sarnia's loss in Kitchener Friday, moved the Whalers into a tie for fifth in the OHL Western Conference with the Sting.
Elsewhere in the OHL, it was: Erie 8, Oshawa 2; Saginaw 6, Mississauga-St. Michael's 4; Guelph 5, Peterborough 2; Kitchener 2, Sarnia 1; Belleville 6, Ottawa 5 (OT); and Sudbury 5, Niagara 3.
Conor O'Donnell had both Windsor goals, while netminder Josh Unice finished with 21 saves.
At Kingston, Ont., Werek's 20th goal of the season gave the Frontenacs (10-31-5-3) an unlikely win over a Knights team that has hovered near the top of the OHL standings for most of the season. The win broke a five-game losing streak for Kingston.
Michael Del Zotto and Zac Rinaldo replied for the Knights (36-11-0-2), while star forward John Tavares was held without a point. Tavares came into the game with 13 goals and seven assists in his first seven games in a London uniform.
Mavric Parks preserved the upset victory with 32 saves for Kingston. London netminder Trevor Cann stopped 24 shots in defeat.
Otters 8, Generals 2
At Erie, Pa., Andrew Yogan erupted for two goals and four assists, and Shawn Szydlowski added his second career hat trick to lead the Otters to a rout of Oshawa.
Spirit 6, Majors 4
At Saginaw, Mich., Joe Pleckaitis scored twice to lead the Spirit over Mississauga-St. Michael's.
Kaspars Daugavins had a goal and two assists to lead the way for the Majors (25-21-1-2). William Wallen, Ryan Lopes and Blake Parlett also scored for Mississauga, while Cameron Gaunce added three assists.
Storm 5, Petes 2
At Guelph, Ont., goaltender James Prigione made 25 saves in his first OHL game as the Storm beat Peterborough.
Tony Romano and Liam Heelis replied for the Petes (20-29-0-2).
Rangers 2, Sting 1
At Kitchener, Ont., Chris MacKinnon scored the winner and added an assist as the Rangers edged Sarnia.
Tyler Randell scored in the first period for Kitchener (20-27-1-1), which snapped a three-game losing skid.
Jordan Hill had the lone marker for the Sting (24-21-2-3).
Bulls 6, 67's 5 (OT)
At Ottawa, Cory Tanaka scored two goals, including the winner 4:14 into overtime, as Belleville defeated the 67's.
Wolves 5, IceDogs 3
At Sudbury, Ont., John Kurz's short-handed goal 3:45 into the third period lifted the Wolves over Niagara.
Kurz's 18th goal of the season came just under three minutes after Matt Dias had tied the score for Sudbury (21-22-2-4) with his second of the game. Akim Aliu added some insurance in the final minute, while John McFarland had the other Wolves goal.
Mathew Sisca, Johnson Andrews and Freddie Hamilton countered for the IceDogs (20-21-4-5), while Mathew Maione added two assists in defeat.