You're not alone; I suspect many readers feel the same way. And when credit card bills come due in a few weeks they'll feel it even more!
Only you can say why you overspend each year, particularly when you know your gifts may not be wanted or needed. Sometimes, however, we give expensive gifts because we're trying to impress people, or because we hope to win their friendship. We may even give to someone because down inside we know we've ignored them the rest of the year, and we hope our gift will make up for it.
But none of these are valid reasons for giving; in fact, they may lead to resentment or cynicism. Instead, a gift should be a genuine expression of our respect or friendship for someone. On that first Christmas, the humble shepherds brought nothing to Jesus except their praise and their worship, but that was enough (see Luke 2:15-20).
Nor should you give something that you know will be useless. Instead, ask God to help you make a gift that they'll not only appreciate, but will help others. For example, you might give a gift in someone's name to an organization that helps people who are facing disaster or poverty (such as Samaritan's Purse, which my son Franklin heads). Jesus said, "Truly I tell you, whatever you did for one of the least of these brothers and sisters of mine, you did for me" (Matthew 25:40).