My (to be fair, minor) issue with gift cards is that they're essentially saying "hey, have some money...but you can only spend it at this one place of my choosing, not yours".
I'm aware that this is pretty low on the list of problems you'd hate to have but it's there nonetheless. Let's say a relative has heard me talk about some Arduino project I'm messing with or something to do with building a computer. They don't know much about either of those things but they know I like "techie" stuff and gadgets so they get me a gift card from Best Buy, as that is the only electronics store they're really aware of.
Now I've got a $100 gift card to a store that either doesn't sell any of the things I'd want to buy or charges a hefty markup over what I'd normally be willing to pay. Sure, I could sell the gift card to some bargain hunter for $95. They'd get $5 off, I'd get most of the value to spend elsewhere...
...but that's a hassle and not at all what the gift-giver would want to necessitate anyway. The other major option is to just suck it up and either buy something I don't really want/need out of the available Best Buy catalog or maybe buy that $100 item that I would've just found for $70 at Microcenter or Newegg.
I think you nailed it when you pointed out issues of perception and tradition. Giving cash to someone other than an aging/retired parent or a young child comes off as odd. It's almost like you didn't care enough to think of a gift that they would actually enjoy or shows that you know them. I just think gift cards are about the same in that regard, only less desirable or useful.