Just use useradd (or adduser), and see it's command line parameters before going on. The graphical tools might by default want to create a home directory, but with useradd the default option is not to create a home directory; to do that, you'll simply add another switch, and without it it won't create the dir (uses existing).
which should provide the necessary help. Basically you just run (as root or with sudo)
useradd -d /home/username -s /bin/bash username
to create user "username" with home directory "/home/username" (that exists already; if not, use -m switch to create it). You should specify the shell with -s even though you're not forced to, because if you don't, some apps might work in an unexpected manner (if they rely on the shell being set). And add extra options when necessary.
Hope it helps!
EDIT: if it happens that the newly created users have a UID set that differs from their home directory owner IDs, meaning basically that the new users don't own their home directories even though the usernames do match, you might want to run chown over the home directories (recursively) to make sure the users own their own homedirectories. Like this (as root or with sudo):
chown -R username /home/username
That makes "username" the owner of "/home/username", and if you specify -R as above, does it recursively (so that all files and subdirectories under /home/username are also affected).