I think you can avoid using the wildcard, by using the following form:
rsync -avz -e ssh --delete abc/ host2:/def
This will copy everything inside abc on the localhost into the def directory on host2.
The trailing slash has a sort of special meaning in rsync. It is explained in the man page: look for "trailing slash".