I would give them the gift, because a gift should be given without expectations of getting anything in return; you know you did something nice; that's what counts. you don't have to be nice to that person and give a gift in the future, but you shouldn't withhold it.
do you give a gift only in expectation of getting one in return?
I don't know if you should believe their story. That really depends on the person and their track record for honesty. Some people are sincere - things happen. However, in my life, I find that those sorts of situations are often lies and excuses. So my initial reaction is cynical and i would assume the other person is lying.
My daughter has a friend. her best friend since the 3rd grade hasn't given her a gift in 5 years. It has become a joke actually - She always has an excuse. But shes a goof and I really think she means well - and now that she's 19 and living on her own she really doesn't have the means. Her excuses are more like hopeful maybe one day promises that no one expects to happen. It used to bother my daughter, but, it has become, as I said almost a joke. I don't know that I'm trying to make a point. I think I'm just rambling.