Here is a partial answer to question 1: the necessary and sufficient condition for a (sufficiently reasonable, say a CW-complex) space to be homotopy equivalent to a topological group is that it should have the homotopy type of a loop space, or, in other words, that it should admit a structure of an $A_\infty$-space. The necessity is clear. On the other hand, if $X=\Omega Y$, then Milnor constructs in "The construction of the universal bundles I", section 3, a group $G(Y)$ with the same homotopy type as $X$. The construction is as follows: $G(Y)$ is defined as the the quotient of the disjoint union of $Y^n,n\geq 1$ with respect to the equivalence relation that eliminates repetitions from sequences i.e. $(x_1,\ldots,x,x,\ldots x_n)\sim (x_1,\ldots,x,\ldots,x_n)$; the product is the concatenation product.
Here are some remarks:
The above is somewhat (but not completely) similar to what happens when one "strictifies" an $A_\infty$ algebra by taking the cobar construction of the bar construction.
An H-space $X$ can have several non-homotopic products. These are one-to-one with $[X\wedge X,X]$, see e.g. Stasheff, H-spaces from a homotopy point of view, p.11, LNM 161 (which also has useful references to earlier work).