I think the spy is Caspian. And it pains me to say it, but it has to be.
It would be too easy if it was John. He's ex-navy. If Lizzy wasn't somehow 100% sure he changed, then he never would have been able to join her crew. Not to mention, John's change of heart came about after he met Gillion and was convinced to switch sides. If John is a spy, it's one lucky coincidence that he, of all the other navy personnel stationed in Zero, was singled out by pirates.
We also know that these spies are meant to infiltrate up and coming pirate crews (ep 115 33:03). If spies don't know each other, and John didn't know Jay was a spy, why wouldn't spy John have stayed with the riptide crew?
Because its not John.
Caspian, on the other hand? He would never raise suspicion from Lizzy. They were both on Shadowbeard's crew, they knew about his secret island. When that location was leaked to the navy, there was a much more obvious mole: Ava. It was Ava who betrayed Lizzy. Ava, who betrayed the woman she loved, aided the navy in finding and killing a pirate lord, and got killed by her own kind as a thank you. Ava, who was killed by a different officer's crew, who didn't have her own crew present to assist in the raid. Ava, knew about the raid? It was Ava that leaked the location?
No. If there's another mole in Lizzy's life, it's... not another mole. It's the same one. Caspian. Who was there for the first ambush, who is here for the second. Caspian. Who had Ava as a scapegoat the first time. Caspian. who knows Lizzy's history and knows her plans and knows her motives and secrets and friends. CASPIAN.
Now thinking back to Ava. If I'm wrong, and she really was a mole back then, why kill her? As a martyr? Some sacrifice? Such a clever captain, a useful asset, why kill her and not some other Ferin? There's plenty to pick from.
If she wasn't the mole, though, and some other spy (*cough* Caspian *cough*) leaked the location to the navy, how do you think a navy officer would react to seeing Ava on her own, no crew in sight, on an island full of pirates? She would look like a traitor. If she's caught in the crossfire, so be it.
So yeah I think it was caspian ): and that he has always been on navy side ),: we'll see in like 3-6 months though :p