Set a budget. Stick to the budget. Do not use credit.
Know what the people for whom you are shopping want. If you don't know what they want, ask them. Ask them what stores they actually shop at, so the gift card won't go unused or unappreciated. We have friends who bought a fixer-upper and do lots of home repairs. They get a Lowe's gift card every year. Everyone else gives them a Lowe's gift card too. They are able to make significant purchases when the items they need go on sale. They actually appreciate the gift cards; they don't consider it a cop out gift at all.
Make a list. Trim the list. Shop from the list. Do not impulse buy. Do not use credit.
Pay cash, or use a debit card. Do not use credit.
Keep the store receipt. Forget about gift receipts, They force people who hate your gift into getting "store credit". If they return it, they're going to know how much you spent anyway. Pay cash (don't use a credit card), otherwise they might want to refund your card instead of the recipient being able to get cash they can spend somewhere else.
For the person who has everything; don't waste your money on more stuff. What restaurant do they like? (gift card) Movie theater close by? (gift card), Opera? Symphony? Museum? Sports fan? (tickets) Always buy two, or put enough on the gift card for two. Going out to eat by yourself is lame. Ditto for the symphony.
And for the guy who has five kids, offer to babysit so that he can take his frazzled wife to the mongolian barbecue and a movie.
Save your gift boxes, bags, bows and tissue paper to use next year. If this causes them to think your cheap then tell them you'd gladly reduce the amount of their gift by $5 so you can stick it in a useless bag (sorry, is my "guyness" showing through?). Or if you want to go high-class, tell them your doing it for the planet. Heck, I've been re-using some of my boxes for as long as six or ten years. Eventually though, I will run into another tightwad who keeps one of the boxes that I put his gift in. These guys get wrapping paper the following year.
Do not use credit.
And remember to put something on your list for the less fortunate.