Why not use serial to exchange data between the Arduino and the Teensy?
How is the Arduino or the Teensy supposed to know, at any given time, whether it is supposed to be acting as master or acting as slave?
As a transfer rate of ~260kByte/s is needet i choosed SPI. As far as i know Serial reaches ~14kByte/s maximum which is far to less.
The problem i see there is that the Mega have to receive and transmitt data at the same time.