I know this has been asked two years ago, but I want to tell you, for future projects, the codec matters.
With .mp3 files, there is a little bit of metadata about them that generates a momentary silence at the beginning of the audio. Thus, when looping, that silence is played as part of the audio, and a gap is made. Thus it becomes necessary to concatenate multiple instances of the same file like in your solution.
An audio format supported by just_audio that does not add any silence at the beginning or end is .wav. So you might want to check that out when dealing with looping in just_audio in future.