Sena Acolatse for the Sharks (23-23-4), who dropped their fourth straight game.
Klingberg scored twice in less than four minutes to put St. John's ahead 2-0 heading into the first intermission.
Jaffray made it 3-0 at 2:17 of the second.
Acolatse put Worcester on the board less than a minute later. Riley and Makinnon, however, responded with goals 50 seconds apart to make it 5-1 IceCaps after 40 minutes of play.
St. John's went 0 for 4 on the power play while Worcester went 1 for 6.