I'm having a difficult time making sense of the point totals. My best guess is that your opponent has 5 Provinces, 20 Keep points, and is miserable; and you have one Province and 15 Keep points. There are 5 treasures, which means that two of them are tied. Your opponent leads in Spoils 4-0. Your opponent has the only Silver. You're tied in two of: Treasure Troves, Coppers, and Golds and are winning the other. I'll assume you need to gain one of each to win all the Keep points. With these assumptions, it's possible to win without drawing any more cards.

Use Graverobber to gain Treasure Trove from the trash to give the opponent -5 VP.

Use Stonemason to trash Gold and gain 2 Silvers (winning the Silver split, giving your opponent -5 VP and you +5 VP).

Play 5 Foragers trashing 2 City Quarters, a Wishing Well, and 2 Coppers for $20 and +5 buys.

Play two Treasure Troves to get $4 and gain two Copper and two Golds (winning the Gold split and giving the opponent -5 VP).

Play 3 Golds and a Copper for $10.

Pay off 3 Debt and have $31 and 6 buys. Buy 2 Provinces and 2+ Coppers (winning the Copper split and giving the opponent -5 VP). You could also buy two Duchies, but it's unnecessary.

At the end:

Your opponent has 5 Provinces, 5 Keep points, and is miserable: 33 VP

You have 3 Provinces, 0-2 Duchies, 20 Keep points: 38-44 VP