windowed sinc filter in matlab
Your understanding is mistaken. LTI filters are applied via convolution in time domain and multiplication in frequency domain.

The confusion possibly happens about designing the filter vs applying it.

The windowed sinc filter impulse response is given by 

$$ h[n] = w[n] h_i[n] ,$$

where $h_i[n]$ is the ideal (infinite length) sinc filter which corresponds to a brickwall lowpass type in your case. To approximate and taper that filter, you apply a window $w[n]$ of length $L$ to it by multiplication in time domain and its effect in the frequency domain is a convolution by the well known Fourier modulation theorem:

$$H(e^{j\omega}) =  W(e^{j\omega}) \star H_i(e^{j\omega}) $$

However, when the filter is applied on an input, the output equation in the time domain is

$$y[n] = h[n] \star x[n] ,$$ 

and the corresponding frequency domain equation is

$$Y(e^{j\omega}) = H(e^{j\omega}) X(e^{j\omega}).$$

So, rewrite your code base don this to get an expected result.