the "best" way of buying stuff from any retailer is when you pay the retailer directly using bitcoin (from your wallet to their wallet) without any middleman. going through third parties to make a payment or going through them to buy a gift card and then using that will always have many additional fees (since they have to also make a profit!).
as for bitrefill i can't comment on the fee issue, but did you really see a fee of at least $1500 (100 times the minimum gift card value) because that seems unrealistic?