AIController Reposses Pawn

I am making a networked co-op game. There are AIControlled pawns in the map that spawn with the AIController autopossessing them. The player may possess any of these pawns. When the player posseses an AIControlled pawn and then unpossesses it, the pawn remains unpossessed without AIController.

It is my understanding that the AIController only lives on the server. I have tried to store the reference of the AIController on the server then call a RPC to get the AIController to repossess that pawn. This has not been working unfortunantly, I get very strange behavior when I do it like this. It starts to call functions on the PlayerController, (Failed to find function PossesCharacter in GeneralAIController) even though I am not interacting with that Player controller in any capacity.

How can I go about this?