1. I do not develop for iOS, but this post might help you.
2. Again, I'm not an expert in iOS, but it may be related to the WAV format you're using.
3. Seems to be a cache problem. You could ad a random number to the request, to make it look like a new one, or you could try to clean cache with this javascript method. I never used but it seems to me it should solve your problem.
EDIT: By the way, I don't know how to play this thing, but I tried it and it felt really natural on my Moto G4s.
Sorry if I can't be of more help, hope this helps in any way.
Cheers.