numpy.cov
seems to be deterministic:
import numpy
randoms = numpy.random.random((1043, 261))
covs = [numpy.cov(randoms) for _ in range(10)]
all((c==covs[0]).all() for c in covs)
#>>> True
I'd imagine the problem is elsewhere.
Also note that this result holds with numbers 1000th the size