I often do end up giving disparate gifts each year. This is because I'm on a bit of a rotating schedule - every year one person gets picked as a special target for a handmade gift. Two years ago it was my sister who got a handmade family themed ornament set in my sister's favorite theme. Last year, it was my mother, who got a handmade scarf. This year, it will be my brother. I also often do smaller scale things - last year my two nephews who love Minecraft got a homemade Minecraft magnetic tile set. My brother in law has always been hardest to shop for, so he often ends up with something that APPEARS to be less thought-out as, say, a handmade scarf. Also aggravating the situation is that my sister waits until 2 weeks before Christmas to finally get me a list of things she thinks BIL and nephews might want. 2 weeks is really not enough time, especially for things that you can't get locally. Which is why they got the minecraft tiles - could not get my hands on the things she thought they actually wanted. The boys were delighted, for the record, and promptly ran off to play with them... and had to be dragged back to continue opening presents. (Ages 8 and 10)
My nephews also get far more presents than any of the other people there, but we've kind of accepted that will happen, even if it feels slightly unfair. I try to remind myself that it's about the spirit, not the $$ haul at the end of the day. That's why when I do end up getting gift cards, I tell them what another poster said: "I wasn't sure what you already had or what you particularly wanted this year, but I know you like (books, music, movies, etc) so I got this for you in the hopes that you would be able to find something that you enjoy, on me!"