The fact that Banshee does not properly playback MP3 files "gaplessly" probably has nothing to do with the music files themselves. Although MP3s are a form of compressed audio (just like M4As, WMAs, etc.), they can still be encoded to play gaplessly.
"Encoder delay" is the term for the number of silent samples added at the beginning of an audio file when it is encoded, and "encoder padding" is the term for the number of silent samples added at the end of an encoded audio file. If track 1 of the CD you just ripped onto your computer as an MP3 was encoded without padding and track 2 was encoded without delay, then the two tracks are able to be played gaplessly. Whether or not they are encoded in such a way depends on the encoder. For example, Windows Media Player encodes CBR (constant bit rate) MP3s without delay or padding, and so they can be played back gaplessly in iTunes (source: my 14:59 CD, by Sugar Ray, in which the last two tracks are meant to segue gaplessly). See this wiki section for some information about repairing badly delayed and/or padded MP3 files, as it will give you some insight about how audio files are encoded and decoded with regard to gapless playback.
So if your files are encoded to play gaplessly, they are encoded to play gaplessly. End of story. Putting them onto a different partition, or even onto a network drive, has absolutely no effect on whether or not the track can be played back gaplessly.
Now, whether or not the tracks actually are played back gaplessly has to do with how the music player buffers the audio samples and sends them to the audio interface (in Linux distributions, the most common audio interface is PulseAudio). If the music player is programmed poorly (which I'd say 99% of them are, unfortunately), it may not begin to read, decode and play the next track until the current track finishes, in which case there are many possible causes of delay, from thread context switching to bring the music player's thread into the foreground, to reading the first few frames of the audio file from the disk (which takes on the order of up to ten milliseconds for an HDD), to decoding those frames, to sending them down to the audio interface, to the audio interface sending them down to the sound library (usually ALSA, in Linux distributions), to the library sending them down to the kernel via a system call...you get the idea. So it is up to the music player to be reading the frames of the next track before the current one ends so it can send them down to the audio interface in a gapless fashion.
In my experience, I have searched and searched for music players that actually play music files gaplessly (one of my favorite albums is Abbey Road, and the medley on side/disc 2 is destroyed when it's not gapless...), and sadly, most of the ones that report gapless playback (including RhythmBox and Banshee on Linux, Google Music, Samsung Music Player and countless others on Android, and various different ones for Windows) don't. The only two I've found that truly implement gapless playback correctly are iTunes on Windows, Mac, iPods, iPhones, etc. and GoneMAD Music Player on Android. If your music files do not play gaplessly in at least iTunes, then they were not encoded correctly, and you'll want to encode new ones from CDs or FLAC files you may have.
So, unfortunately, I do not know of any music players in Linux that actually do gapless playback. Maybe one of these days I'll look into the code of Banshee and see if there isn't anything I can do to help make it truly gapless...
Anyway, I hope this explanation helps a bit. If anyone else knows of some good music players that do gapless playback correctly, please comment.