Daniel_Wolf has a fair point to consider here,
API's dont normally use cookies for persistance. If this is your heavily loads your experiencing down/up pool members just means you have fixed the problem for now by resetting everything as shortly you'll be in the same position as you were previously just on a different server.
If your application only ever keeps one connection open or is always from one IP persistance will lock that user to one location and wont release it until the connection times out. A company of many users behind a NAT/Proxy normally cause this issue. I know this is the advantage of cookie persistance, but API client don't normally use this.
How are you managing internal and external comms? One VS for each or a VS for external and internal?
Potentially you could put them onto different Virtual servers to try to put different persistance on each config. Maybe even check that youir fallback persistence profile is also set so if cookies aren't set you still have something.
Load Balancing is on the pool config so i think i'd leave that alone, i'd also keep away from having more than one pool with the same pool members in it otherwise you wont see the total picture.