I finally got around to building a cable off the VHCDI connector that avoids resistors in the output path to the matrix and the max output clock rate that works properly has roughly doubled. I can get somewhere between 50 and 60Mhz on the data clock line before I start seeing some flashes and misbehavior. 50Mhz is totally safe now as a clock rate, but it starts getting sketchy somewhere between there and 60Mhz, which was a bit ragged. I could still play with the adjustable drive strength a little bit, but the high slew rate and 8ma drive setting on the Spartan-6 seems adequate on the higher speeds, and you can even get away with 4 or 6ma at lower speeds. But anyway, now I have loads of headroom to play with for either more framerate or increased color depth.
Side note: I totally do not recommend trying to build your own VHCDI cable!
The necessary male connector is available from Digilent in a board mount form, and from Digikey or Mouser as a (supposedly) insulation-displacement type connection to the wire. Both are $8-10, which is pretty pricey for a single connector. Furthermore, the pitch between wires is only 0.8mm, and nobody has ribbon cable available in small quantities that's got that tight a pitch! Standard .05" pitch 28-gauge ribbon cable looks gigantic relative to this thing! - totally unworkable.
In the end I did make it work out by painstakingly soldering 30-gauge kynar wire-wrap wire to the terminals (head-worn magnifier from Amazon was really a godsend here) and then attaching the other ends to a standard ribbon cable female plug for the matrix end. The exposed ends being soldered were very, very, short to avoid shorting against each other. I feel like a watchmaker now.
In any event, this is a temporary solution, I actually have a small PCB off at the prototype house now so I can eventually use the board-mounted version of the VHCDI connector and a standard IDC jack for the ribbon cable. I bet the signal integrity will be even a bit better after that.
The signals look just so
much better now on the scope and I'm finally happy with the speeds I'm getting out.