Mediauppspelning stöds inte på den här enheten
Unseed Puig, 22, slog den tyska världen nummer två 6-4 4-6 6-1.
Reigning Australian Open mästare Kerber, 28, kunde helt enkelt inte matcha intensiteten av hennes yngre motståndare i beslutsuppsättningen.
Tidigare Petra Kvitova av Tjeckien slog USA: s Madison Keys i tre uppsättningar 7-5 2-6 6-2 för att vinna brons.
"Det är fantastiskt", sa Puig. "Jag vet att mitt land verkligen uppskattar detta och jag ville ge det till dem. Som jag gjorde det i kväll, skulle jag inte vilja det på något annat sätt. "
Puig, som föddes i Puerto Rico men växte upp i Miami, tillade: " Jag har alltid varit 100% lojal mot var jag föddes och rötterna jag växte upp i.
"Jag har fortfarande familj i Puerto Rico och jag har varit tillbaka för att besöka en hel del. Jag tror att det är min favoritplats att gå till när jag vill gå till stranden eller se familjen.
"Den ön har gett mig så mycket. Så mycket kärlek och stöd under hela min karriär och jag ville bara ha den här för dem."
Det blir en femte OS-medalj för Venus Williams efter att 36-åringen nått den blandade dubbelfinalen med Rajeev Ram.
Williams, singlar mästare i Sydney 2000 och vinnare av tre dubbla guld med syster Serena, gjorde tidiga utgångar från singlar och kvinnors dubbel.
Men Williams och Ram besegrade Indiens Rohan Bopanna och Sania Mirza i den blandade semifinalen, och kommer att spela medamerikaner Jack Sock och Bethanie Mattek-Sands för guld.
Prenumerera på BBC Sport nyhetsbrev för att få vårt tips på nyheter, funktioner och video skickas till din inkorg.
Monica Puig slog Angelique Kerber i tre set i dam singelfinalen för att vinna Puerto Ricos första olympiska guldmedalj någonsin.