Way to stick with it! Test proves that you can affect problem by reducing # of FP Writes. That would seem to indicate that the large # of FP Writes is part if not all of the problem. I don't know why that would be. Perhaps NI has some insight into what is happening in the background when a FP Write is executed.
There still remains a slim chance that something else is also affecting this. It could be that reducing the # of FP Writes bought you enough time to make things work but that you still have a performance issue in another part of your design. You may want to consider ruling out the large clustered variable being a contributor. Are you using a lot of variables in your application?
My money is on the variables being part of the problem. If you are using a lot of variables, that will definitely affect performance.
I took the NI Real-Time class a while back. Bottom line is that while global variables are easy to program, they are not the ideal method for transfering large amounts of data.
Here a couple of links to info on this subject.