"Avoir" is linked to the concept of possession, be it of a material object or something abstract. For instance, you can say :
J'ai un ballon
J'ai 8 ans
because both a ball and age are considered a possession in French.
As for your question, you're right, originally, " j'ai eu "j'ai eu meant "I've"I had something but not anymore".
But nowadays, when we use it without mentioning a specific date or period, it usually means something like " J'ai reçu "/"I obtained/received/...".
For instance,
J'ai eu une grosse opportunité.
usually means
I have a great opportunity.
Because nothing implies that I don't have it anymore.
BUT,
J'ai eu une grosse opportunité à l'époque mais...
usually means
I have had a great opportunity at the time but...
At the time implies not anymore.
As you can see this is just for conveniance that we say it that way. Unless you see a specific period of time, "j'ai eu" is to be understood "j'ai reçu/ j'ai eu depuis".