Nowadays there is no difference between “Hab” and “Gut”. Note that “Hab” is a short version of “Habe”. Nowadays “Habe” is hardly used and replaced by either “Gut” (material for production or selling), “Vermögen” (thing you own) or “Besitz” (things you control).
As John Smithers pointed out earlier in former times there have actually been different meanings for the two words.
Old encyclopedia Oeconomische Encyclopädie (1780) explains
Im Hochdeutschen wird es außer der dichterischen Schreibart wenig mehr gebraucht. Nur im g. L. sagt man noch Hab und Gut, jemandes sämmtliches Vermögen auszudrücken, wo Habe in engerer Bedeutung das bewegliche, Gut aber das unbewegliche Vermögen bezeichnet.
My transcription replaces the old glyphs with nowadays letters with approximately the same meaning. This translates to English roughly as
It is hardly used anymore in High German except in poetic style. Only in rural regions “Hab und Gut” is still in broad use to refer to all of somebody's property. Where more specifically “Habe” means the movable things and “Gut” means the non-movable property.
Movables have been called “Mobilien” at the time (1803) so have a look for a verbose description about the meaning of “Mobilien” in this respect.
Searching for the reason for the former distinction takes us back in time even further – where things starting to get imprecise.
Back then “Gut“ referred to an area (“Gutsbezirk” or “Gutsgebiet” in Austria) that was owned by another party than the ones using it. Think about a landowner and farmers where the farmers had to give shares of their crops (“Zehnt”) for permission to use/lease the land. These lands used to be controlled/protected by armed parties and several farmers where living on the lands. Often there was a central building or residence. In other words “Gut” included some sort of administrative structure and people in distinct roles. Probably this could come into existence because central Europe wasn't a peaceful place and specialization gave an advantage of better security.
Today, some bigger farms are still called “Weingut” or “Gutshof” but usually the landowner or employees work there.
“Habe” was something which the user actually controlled himself in my interpretation. This something could be movable stuff and land. However it was more likely that a farmers property was movable (what a human can hold) but the land wasn't his own. Later the law distincted using movability as criterion with exceptions.