How is it possible to account for the fact that NH3 is a weak base in water but a strong base in HCl?
The difference between a weak base and a strong base is that a strong base is completely converted to ions in a given solvent, whereas a weak base is not. Although this depends on the actual basicity of the solute, it is also very dependent on the solvent involved.

In water, $\ce{NH3}$ can react to form $\ce{NH4+}$ and $\ce{OH-}$. However, most of the ammonia remains as $\ce{NH3}$. This is due to the difference in pKas:1

$\ce{NH4+}$ = 9.2

$\ce{H2O}$ = 15.7

Because the ammonium ion is more acidic than neutral water, very little $\ce{NH4+}$ will be present at equilibrium.

In contrast, the relevant pKas for the $\ce{HCl}$ solution are:

$\ce{NH4+}$ = 9.2

$\ce{HCl}$ = -8

This tells us that $\ce{HCl}$ is much more acidic than the ammonium ion, and therefore essentially all of the ammonia will be protonated when dissolved in $\ce{HCl}$. As a result, it is considered a strong base in this case.

1Evans' pKa tables