Bring 3 quarts water and ham bone to a boil in a large stockpot. Boil until meat from the bone comes off easily, about 1 hour. Remove bone from broth. Allow bone to cool enough to touch; remove as much meat from as possible. Transfer meat to a resealable plastic bag, seal and refrigerate.
Pour broth into a large bowl; cover and refrigerate overnight. Skim and discard any fat from the top of the chilled broth; transfer broth to a large pot.
Bring broth to a boil; add potatoes, cabbage, celery, and reserved ham. Continue to simmer until potatoes are tender, about 45 minutes.
Whisk 1/2 cup water and flour in a bowl; whisk into potato-ham soup until thickened. Add light cream; stir.