The Argentinean had looked to be heading for a straightforward victory when he claimed the opening two sets of the match, breaking his opponent five times in the process.
However, despite falling behind to another break of serve, Garcia-Lopez rallied in the third set before eventually prevailing 6-4.
Both players successfully held serve six times in set four to force a tie-break, which the Spaniard sneaked 8-6.
Garcia-Lopez made the first breakthrough in the deciding set and had the chance to complete an epic turnaround as he served for the match at 5-3.
He was unable to dispatch his plucky opponent though, as Monaco converted his third break point following a successful hawk-eye challenge.
The final three regular games of match all went with serve - despite Monaco spurning multiple break points - to set up a winner-takes-all tie-break.
Garcia-Lopez somehow regained his compose and found the energy to dominate the breaker, taking it 7-3 to win the 271-minute match 3-6 1-6 6-4 7-6 7-6.
Fabio Fognini will provide the opposition for Garcia-Lopez in the second round.