Cross power spectral density (CPSD) comparison between signals
I've ended up at a workable solution.

To deal with the noise, average the CPSD results of many realizations of the noise.


Pxy_AvB_mat = zeros(512/2+1,nRealizations); %preallocate
Pxy_BvC_mat = zeros(512/2+1,nRealizations); %preallocate
for i=1:nRealizations
    B = 1*(rand(length(t),1)-0.5); %new realization
    [Cxy_AvB,freqs_AvB] = cpsd(A,B,window,100,512,Fs);
    Pxy_AvB_mat(:,i) = abs(Cxy_AvB);
    [Cxy_BvC,freqs_BvC] = cpsd(B,C,window,100,512,Fs); 
    Pxy_BvC_mat(:,i) = abs(Cxy_BvC);
end
Pxy_AvB = mean(Pxy_AvB_mat,2);
Pxy_BvC = mean(Pxy_BvC_mat,2);


Use a spectral analysis tool like periodogram, pwelch, or roll your own with FFTs to verify if a signal is pure noise or not. Averaging multiple realizations of noise's spectral powers will yield a flat line - showing there are no major noise constituents. Same idea as the code above. A single realization can be misleading for spectral analysis or CPSD. Many-realizations-averaged-CPSD will still show some minor peaks with respect to the noise signal, but the spectral analysis in combination will help confirm if there are any actual frequency components (noise on its own is flat).