Swan-like theorem and covering spaces

If I can take only the finite covers, then yes, I think. (After all, Swan's theorem is a characterization of finite-dimensional vector bundles, not all vector bundles.) This is easier to do over $\mathbb{C}$ than over $\mathbb{R}$. In addition to the entire sheaf $C_X(-)$, let $C(X) = C_X(X)$ be the algebra of global continuous functions.

Since the module $M$ is locally free, what you want to do is to choose a basis for $C(U) = C_X(U)$ for enough open sets $U$, and such that the bases agree when you restrict to smaller open sets. You could just ask for this directly, but there is an indirect algebraic condition that comes to the same thing. Namely, you can ask for $M$ to not only be finitely generated and projective, but also a semisimple commutative algebra over $C(X)$. This gives you the unordered basis in each fiber.

Over $\mathbb{R}$, it's not quite enough to require that $M$ be a semisimple algebra, because you could end up creating $C(Y,\mathbb{C})$ for a finite cover $Y$ of $X$. So, you could also impose the condition that $f^2 + g^2 = 0$ has no non-trivial solutions in $M$.