Six Seattle pitchers combined to strike out 10 and surrender just one earned run in what was the Mariners' second straight victory.
Aaron Harang was scratched from his scheduled start and Hector Noesi filled in, working 4 1/3 innings while throwing 79 pitches.
Wilhelmsen came on in the ninth to protect the lead and gave up a one-out single to Brett Gardner, who promptly stole both second and third. Jayson Nix then struck out swinging and Robinson Cano grounded to shortstop to end the game.
It was Wilhelmsen's 11th save and he protected the victory for Oliver Perez (1-0), who worked 1 1/3 innings and struck out three.
Andy Pettitte (4-3) took the loss. He left the game in the fifth inning with tightness in a neck muscle, having allowed two runs on four hits.
Michael Morse hit a solo homer in the sixth inning to produce what turned out to be the winning run.
Fan wears 'Forced Sex University' shirt to insult FSU on Saturday
Caroline Berg Eriksen: Soccer player's wife triggers debate with post-birth selfie