Cavallini pushed the Whitecaps into potential playoff position in Major League Soccer's tight Western Conference. Vancouver currently owns a tiebreaker with Real Salt Lake (5-7-6, 21 points), based on more wins.
Vancouver got its second straight 'home' win, though the Whitecaps are playing home matches at Providence Park and using Portland as their home base due to COVID-19 restrictions in place in Canada.
In the 30th minute Cavallini finished off some quality passing, with Fredy Montero connecting a long ball to Cristian Dajome, whose cross then found Cavallini for the forward's fourth goal of the season.
The Whitecaps had nine shots with three on target in an active first half.
Cavallini stayed onside to get a heavy touch on Montero's cross into the box in the 59th minute, scoring his fifth goal of the season and giving the Whitecaps a 2-0 lead. Dajome was also credited with an assist.
LAFC made it interesting after video review led to a penalty kick, which Eduard Atuesta put away in the 83rd minute after Whitecaps goalkeeper Evan Bush was issued a yellow card for coming off his line too early on Atuesta's first attempt.
Atuesta got a second chance and scored his first goal of the season.
Pablo Sisniega made a pair of saves, including a key first half stop to deny Cavallini. But LAFC couldn't come back for a draw as the Whitecaps held on in the final minutes for an important win.
LAFC are 4-3 in their last seven matches and are in fourth place in the West, ahead of FC Dallas (6-4-6, 24 points) based on total wins.