Recipients of money/gift cards are not liable for taxes as it is considered a gift. The non-profit handles the tax liabilities of income vs disbursement on their end. This is assuming the recipient is a beneficiary of the non-profit, not a volunteer or employee of the non-profit. If they are a volunteer or employee, it can cross into the grey territory of being considered compensation or a bonus.
There is no reason, that I'm aware of, that a non-profit would be prohibited from distributing funds on gift cards. Non-profits in the US provide both financial and physical assets to beneficiaries. Physical assets can include cars, clothes, toiletries, food, etc. Providing gift cards allows the non-profit to restrict the use of the funds provided to the beneficiary to the purchase of eligible products rather than just handing over cash that might be used for items not covered under the non-profit's mission statement.