I like the idea of trading reds for golds! Definitely helps balance out bad luck, the same way that relic shards do.
However, I now realize that if there's any way for folks to get infinite golds through a workaround, they'll definitely try it, even if it's ridiculously slow and tedious. Like, if the gold cap is separate then folks will just give away golds but not any reds to continue grinding for only golds indefinitely. If they can trade reds for golds without a limit, then they'll do that as well.
Maybe there's a sort of 'tracker' that tracks the amount of gold drops per day, and if you get less than a certain amount, say 5 or so, you can trade reds for golds up to that once your red cap is full. That way, you could always get at least 5 golds per day, even if you're really unlucky and get nothing but red drops; and of course after that you've got more room under the cap to get more gifts so you can grind it out and maybe get a few extra golds along the way. Also, if you get lucky and manage to get more than 5 gold drops before doing any trading, you're not missing out on anything, and don't have to spend more time grinding to get back up to full capacity.
I still feel like 50 is too small for a cap though, since it's only one day worth of gifts for someone with a full friends list. Maybe something closer to 100 - 150 might be better?