Cafuné is a beautiful word borrowed from Brazilian Portuguese that has no single-word equivalent in English or even Spanish. It describes the specific, tender act of running your fingers through a loved one's hair.
In this song, the singer dreams of his ex doing this for him, "Donde me haces cafuné" (Where you give me a cafuné). This one word perfectly captures the gentle intimacy he misses, making his loneliness when he wakes up even more poignant.
This song is a straight-up confession of regret. Big Soto isn't trying to be cool or tough; he's admitting he messed up and is now paying the price. He opens with, "Debo ser honesto contigo / Hay una lágrima que está saliendo" (I have to be honest with you / A tear is coming out), setting a super vulnerable tone from the start. He knows he's the one to blame—"El culpable soy yo" (I'm the one to blame)—and he sees that his ex is doing better without him, noting, "Tú estás más bonita, se ve que aprendiste" (You're more beautiful, it seems you learned).
The whole song is a cycle of this sadness. He's tempted by his phone, wanting to text her, but knows it's pointless. His only escape is sleep, where he dreams she's with him, giving him "cafuné" (a sweet word for stroking someone's hair). But then he wakes up alone, and the chorus hits again: "Y ahora lloro, lloro, lloro por ti" (And now I cry, cry, cry for you). The title even has a crying emoticon in it, :'(, which tells you everything you need to know about the mood here.