Es schmeckt mir sehr.
Bill Gates ist sehr reich.
viel indef. pronoun, adj.
Das Kind hat viel gegessen.
Bill Gates hat viel Geld.
You answered the question yourself by indicating the function of the words. "Sehr" is an adverb and as such it modifies adjectives, verbs or other adverbs.
"Viel" is a pronoun and as such it stands in for persons or things.
You could replace it with "Pizza" or "it" if you want to. "Viel" can also be an adjective that modifies or kind of "counts" nouns.
The two are never interchangeable. The confusion mainly comes from the fact that they can be both a translation for the English "a lot"
"Viel" is associated with number. You can count how much money Bill has, you can count (sort of) how much the child ate.
"Sehr" is an amplifier, like 'very' in English.