For a given sparse matrix, how can I multiply it with a given vector of binary values
If you don't like the speed of matrix multiplication, then you have to consider modification of the matrix attributes directly.  But depending on the format that may be slower.
To zero-out columns of a csr, you can find the relevant nonzero elements, and set the data values to zero.  Then run the eliminate_zeros method to remove those elements from the sparsity structure.
Setting columns of a csc format may be simpler - find the relevant value in the indptr.  At least the elements that you want to remove will be clustered together.  I won't go into the details.
Zeroing rows of a lil format should be fairly easy - replace the relevant lists with [].
Anyways with familiarity of the formats it should possible to work out alternatives to matrix multiplication.  But without doing so, and doing sometimes, I could say which ones are faster.
I have a sparse matrix and another vector and I want to multiply the matrix and vector so that each column of the vector where it's equal to zero it'll zero the entire column of the sparse matrix. 
How can I achieve that?