I'll share how I get mine to work when it isn't working easily. I've had two different little tricks that I've used. First few times when it didn't give me the 5% discount, I backed out and added another different gc to my order. It was just a sudden I'll try this and see what it does, lol. Since this was all for Disney gc's in the end, I added a Disney gc to my order, saved and continued, and the 5% showed up! Then I edited my items, saving the Disney gc for later, buying only the Target gc's, and the 5% discount stayed, I completed the order and checked out.
Then after a few times, I tried the little trick I use now. When the discount's showing up, I x out one of the gc's, as I always first try only gc's, and pay for part with my redcard. I save and continue and the 5% discount shows up. Then, I go back and 'edit payment' and switch back to all the gc's. Then save and continue and the 5% discount stays and I check out. I never leave pay without the 5% discount. Signing out and back in never helps, but jostling around the order and/or the payment seems to always do the trick! Maybe you could try it and it'll work for you as well! Good luck!