This definitely works. I've been doing it for a while with my Marriott Rewards card. It was a bit better before they changed the holding period from 6 to 12 months, but it still works and I bonds are paying pretty decent interest (currently 4.66%). If you time your purchase properly, you really only have to hold the bond for about 10 months. If you cash the bond after 12 months, you lose 3 months worth of interest, but if you really only had the bond for 10 months, you've only sacrificed one month's interest. When you add in the value of the reward points earned, it more than makes up for the penalty.
Steve