意図通りにプログラムが動作するまで繰り返しは使うべきではない。
どこに問題があるのかわからなくなる。

単にABCD…Z
とあるプレイリストからそれぞれランダムに一曲選んで順に再生したいだけなら、
Aプレイリストを読み込む
ランダムで一曲選択
再生用プレイリストに一曲追加



これをZまで続けて最後に再生用プレイリストを再生したらいいだけでしょ?
途中に条件だとか繰り返しだとか入れるからややこしい事になる。