Kendrick (9-10) won for the fifth time in six starts, taking a no-hitter into the sixth inning. The right-hander yielded one run, walked three and struck out eight.
Justin De Fratus and Jake Diekman combined for a scoreless eighth and Anthony Bastardo notched his first save of the year for Philadelphia, which kept its faint playoff hopes alive by taking the opener of a three-game series.
The Phillies came into the contest six games out of a National League wild card spot.
Domonic Brown socked a two-run homer and Michael Martinez added a sacrifice fly in the third inning to provide the Philadelphia offense.
The loss was hung on Miami's Wade LeBlanc (2-4), who allowed three runs on four hits in five frames.
Donovan Solano got the Marlins' only RBI.