What make / model is switch B? RSPAN'd work perfectly for your needs, depending on how you set things up.
Namely, if the stuff on switch A and B are in the same VLAN, your config'd go something like this :
monitor session 1 source int (int)
monitor session 1 dest remote vlan (vlan)
monitor session 2 source remote vlan (vlan)
monitor session 2 destination int fa0/3
The two VLANs would have to match on A and B, and the VLAN itself allowed to traverse the trunk between
the two, if so configured.
Just my 00000010bits.