My go-to is BRS granular ferric oxide (GFO) in a TLF 150 reactor. The biggest mistake you can make when using GFO is stripping the PO4 from the water too fast. I'd suggest starting at less than 1/2 the suggested amount, testing the next day, and going from there. You will exhaust the GFO fairly quickly so you may need to change it frequently (every couple days?) until you reach your goal - I shoot for .03ppm. If it's been an ongoing problem, there is a good chance that your rocks/sand have absorbed some PO4 so it may take awhile for the levels to remain on target.
Now that you've reduced the levels, you need to determine why they got that high to begin with. Overfeeding is often the problem try cutting back of feeding, clean the sand (python siphon to the rescue!) and keep an eye on things. Continue to test to make sure things are on track.