First of all, REMEZ is an obsolete function for designing an equiripple FIR filter. You should use FIRPM instead. FIRPM has the same syntax as REMEZ.
The second argument of FIRPM (which you have defined as [0 fp fs 1]) is a vector of pairs of normalized frequency points, specified in the range between 0 and 1, where 1 corresponds to the Nyquist frequency. The Nyquist frequency in this case is 40 kHz, so for a 20 kHz passband edge, fp should be set to 0.5.
You can experiment with fs to suppress the desired noise frequencies. fs = 1 will still allow some noise between 20 and 40 kHz to pass through, while placing fs closer to 0.5 (such as 0.6) will suppress more of the noise. Note that decreasing the distance between the passband and stopband while keeping the order constant will increase passband and stopband ripple.