Does the problem depend on what you're playing (eg. a type of stream), or does it happen regardless?
To narrow-down what/where the problem is, please try writing the output to a WAV file (using BASS_Encode_Start + BASS_ENCODE_PCM) and see if the problem is present in that. If you're playing a single stream then you can set the WAV writer on that. If that WAV sounds fine, or if you're playing multiple streams simultaneously and the problem is affecting all equally (ie. not any individually), then set a WAV writer on the BASS output mix like this:
mixstream = BASS_StreamCreate(0, 0, 0, STREAMPROC_DEVICE, 0); // get output mix stream
wavwriter = BASS_Encode_Start(mixstream, wavfilename, BASS_ENCODE_PCM | BASS_ENCODE_QUEUE, 0, 0); // set WAV writer on it