Proposition 1.13 of these [notes][1] by Coste implies (if I've read it correctly) that any semialgebraic set $S$ is homeomorphic to a union $U$ of open simplices in some finite simplicial complex $K$.
Thus $S$ is an open subset of an ENR, hence is an ENR. Its singular cohomology therefore coincides with its Čech cohomology, which is finitely generated. Therefore its singular homology must be finitely generated. [1]: http://perso.univ-rennes1.fr/michel.coste/polyens/RASroot.pdf