AVAudioPlayerとNSTimerを安定させて動作させるためにしたことは、解放する時に値がnilかどうかを確認してから解放するようにして、解放した後はそれぞれにnilを入れるようにしただけです。
これが正しいかどうかはわからないけど、安定したどころかよくなったから結果オーライです。