Hi,
FOP2 does not interfere with ongoing calls and the way asterisk handles audio and applications. My guess is that chanspy (the application that perform the actual call barge/spy notice some kind of channel disconnection and ends up disconnecting the spy channel also.
The only parameter you can set in fop2.cfg is persistent_spy that should be leave commented or set to 1 (the default value). That means that if the spied on channel terminates the call, you will still be connected to that channel if any new call is received (so a call center manager does not need to restart a spying session after an agent finishes one call). That is the default behaviour and is the oposite of your problem, so I do not think it has to do with it.
So my guess is that chanspy senses something on the channel and disconnects you, there is nothing we can do in FOP2 to change that behaviour.. perhaps you can alter the spy_options and pass different parameters to chanspy.