I have two comments:
(1). It is a trivial remark, but one should note that representations $\rho, \rho'$ which are in the same component of $Hom(\pi,G)$ (in your case, $G=GL(r, {\mathbb C}))$ yield flat bundles $E_{\rho}, E_{\rho'}$ which are isomorphic as vector bundles. Here and below $\pi=\pi_1(M)$.
Proof. It suffices to work with principal $G$-bundles. Let $\rho_t$ be a path of representations between $\rho, \rho'$. Then $\rho_t$ determines a (flat) principal $G$-bundle $P$ over $M\times [0,1]$, whose restrictions $P_0, P_1$ to $M\times 0, M\times 1$ are isomorphic to the principal $G$-bundles associated with $\rho, \rho'$. I claim that this bundle is just the product $P_0\times I$. Indeed, construct a section of the bundle $Hom(P, P_0\times I)$ starting with the identity on $M\times 0$ and then extend it to the rest of $M\times I$ (path-lifting property for Serre fibrations). QED.
This gives a sufficient, but, of course, far from necessary, condition for an isomorphism of vector bundles. In particular, you get finiteness of the number of isomorphism classes of vector bundles. As a simple example consider the case $r=1$ and $H_1(M)$ torsion-free. Then $Hom(\pi, {\mathbb C}^\times)=
({\mathbb C}^\times)^n$ is connected (here $n=rank(H_1(M))$). In particular, all flat line bundles in this case are trivial.
(2). A far less trivial is the result of Deligne and Sullivan "Fibres vectoriels complexes a groupe structural discret", C. R. Acad. Sci. Paris 281 (1975), 1081-1083. They prove that for every finite cell complex $M$ and every $\rho: \pi=\pi_1(M)\to GL(r, {\mathbb C})$ there exists a finite cover $\tilde{M}\to M$
so that the pull-back of the associated flat bundle $E_\rho$ to $\tilde{M}$ is trivial (as a bundle). Their proof is constructive and (from what I can tell by reading Math Review of their paper since I lost my copy) gives a sufficient condition for triviality of $E_\rho$: Let $A$ denote the subring of ${\mathbb C}$ generated by the matrix entries of $\rho(\pi)$. Suppose that there are two maximal ideals $m_1, m_2$ in $A$ so that:
a. $A/m_i$ have distinct characteristics and
b. $\rho(\pi)$ maps trivially to $GL(r, A/m_i), i=1,2$.
Then $E_\rho$ is trivial as a vector bundle.
From this one can extract a sufficient condition for an isomorphism of bundles $E_\rho, E_{\rho'}$ (by considering the flat bundle $E_\rho^*\otimes E_{\rho'}$).
If I remember correctly, a proof of this theorem by Deligne and Sullivan was redone by Eric
Friedlander, in "Étale homotopy of simplicial schemes". Annals of Mathematics Studies, 104. Princeton University Press, 1982. I cannot tell if it is easier to read than the original.