The former US Open champion performed impressively to defeat his Slovenian opponent 6-4 7-5 6-3.
Both players traded breaks of serve in the first set before Del Potro made the vital breakthrough to take the opener.
The second set proved to be an equally tight affair and despite Kavcic breaking the dangerous Del Potro serve once again, the 23-year-old managed to hold on to take a two-set lead.
Kavcic appeared to tire in the third and Del Potro had numerous break points throughout the set.
Del Potro eventually broke down Kavcic's defence to seal his place in the third round.