Sorry, but it's your fault too. He wouldn't be a sucking leech if he had a childhood that praised the work ethic and showed that people earned, not sponged, their keep.
As for now, are you sure that you have a partnership ? I have a former friend who is a enabling Mommy. She has vowed often, after her little (in his 30s), darlin' has had his last help from her. Then let him move in with his 50-some year old "girl" friend and steal checks out of the back of her checkbook. She is no longer my friend. You face somewhat the same situation. Why not just put the kid's name on your bank account ?