I have had this EXACT same thing happen recently. RP IK locking when the joints are straight scrubbing through the timeline. I fixed it in the exact same way, as well : set preferred angle to 90 degrees. I first tried a slight angle of 1 degree then 30 degrees figuring it wouldn't matter the actual value. However, only 90 degrees worked all the time.
Another clue,though, was that I had an expression controlling the scale value of the joints in the IK (typical stretchy IK). This problem went away when I broke that scale connection. So, that has something to do with it, for sure. My assumption ended up being that the scale was changing the inputs (joints) to the IK solver thus triggering a re-initialize process of some kind and when the scene was scrubbed to a frame where the joints were straight, the solver needed the preferred angle to know what plane to use. I have no idea why it works with 90 degrees and not with 1 degree. How exactly the preferred angle works is mysterious with this kind of behavior and since the docs are so light on the subject, we can only guess. -TT -- http://groups.google.com/group/python_inside_maya
