You asked:
1) What's the difference between these two expressions ("most heavy"; vs. "heaviest"?
"most heavy" is grammatically incorrect; whereas "heaviest" is the grammatically correct superlative form of "heavy". The grammatically correct comparative form of "heavy" is "heavier".
2) Which one is grammatically correct?
"Heaviest" is the grammatically correct version, in the superlative form; and "heavier is the grammatically correct version, in the comparative form.
"Most heavy"—or "more heavy—do not exist! (and are grammatically incorrect!).