If the group $G$ does not have property FA, then a necessary and sufficient condition is that the group embeds in $GL_2(\mathcal{O}_K)$, for some number field $K$ (although there are such subgroups which do not have property FA). This follows from Bass-Serre theory. Of course, this begs the question of classifying finitely presented subgroups of $GL_2(\mathcal{O}_K)$ with property FA.
More generally, Bass-Serre theory implies that a general finitely generated subgroup of $GL_2(\mathbb{C})$ will have a graph of groups decomposition into subgroups of $GL_2(\mathcal{O}_K)$ for some number fields $K$.
The geometrization theorem and ending lamination theorems classify discrete subgroups of $PSL_2(\mathbb{C})$ (which up to finite-index embed in $SL_2(\mathbb{C})$), by their topological type as a 3-orbifold and the ending lamination data.
You ask about congruence subgroups of $GL_2(\mathcal{O}_K)$. If $K=\mathbb{Q}$ or $K=\mathbb{Q}(\sqrt{-D})$, for some $D>0$, then the group is a discrete non-uniform lattice in $PSL_2(\mathbb{R})$ or $PSL_2(\mathbb{C})$, and one may classify the congruence subgroups of $SL_2(\mathbb{Z})$ by a result of Tim Hsu (more generally, I think there exists and algorithm to determine if a finite-index subgroup of $GL_2(\mathcal{O}_{\mathbb{Q}(\sqrt{-D})})$ is congruence, but I don't know if it's written down - I could describe it for you though if you're interested). More generally, one can determine if a discrete non-uniform arithmetic lattice in $PSL_2(\mathbb{R})$ or $PSL_2(\mathbb{C})$ is congruence.
Otherwise, Serre essentially showed that a finite-index subgroup of $GL_2(\mathcal{O}_K)$ will have the congruence subgroup property (and thus, non-uniform lattices in a product $(\mathbb{H}^2)^k\times (\mathbb{H}^3)^l$ will have this property if $k+l>1$).
For examples of groups which don't have property FA, there's a paper of Calegari and Dunfield which constructs an ascending HNN extension subgroup of $SL_2(\mathbb{C})$.
There are many necessary conditions which show that various groups cannot embed in $GL_2(\mathbb{C})$, some of which you describe. But I think a general classification is beyond reach at this point.
As you say, if a space $X$ has a $\mathbb{C}^2$ bundle with flat connection, then you get a representation of $G=\pi_1(X)$ into $GL_2(\mathbb{C})$. The space of such flat bundles is computable if $G$ is finitely presented, it amounts to computing the character variety of $G$ into $GL_2(\mathbb{C})$. However, it is difficult to tell if there is a faithful representation. If you can solve the word problem in $G$, then in principle one can determine if a representation is not faithful. But I believe that there may be finitely presented subgroups of $GL_2(\mathbb{C})$ which do not have solvable word problem, so I don't expect this method to work in general. Also, it seems difficult to certify that a representation is faithful, except if it is discrete. The difficulty is to find a nice fundamental domain for the action on a product of symmetric spaces on which the group acts discretely (in fact, it might not exist).