According to grammar rules, a gerund is used after the word 'enjoy', so the correct replacement for the underlined phrase would be 'have enjoyed hearing'.
'Would' is a modal verb, so it is followed by a base form of the verb, therefore, only 'have' can be used in the sentence and 'have' is followed by a past participle form of the verb. Therefore, only (b) is appropriate.
The correct sentence is- 'How you would have enjoyed hearing him talk about Venice!'
Hence, option (b) is correct.
NOTE/-
Gerund: Gerund is a verb form that functions as a noun, ending in -ing. A gerund can be either the subject or object of a sentence in English. Example: "Everybody enjoyed her dancing and singing at the party." The words 'dancing' and 'singing' are gerunds.
"Participle: A word formed from a verb (e.g. going, gone, being, been) and used as an adjective (e.g. working woman, burnt toast) or a noun (e.g. good breeding). In English, participles are also used to make compound verb forms (e.g. is going, has been). Consider the sentences given below:
Dancing at the party, the women fell on the ground.
Encouraged by her parents, Rita went on to pursue her passion.
The highlighted word in the first sentence is of the form Verb + ing and is used as a present participle. It is used to denote an action that is going on or incomplete or imperfect.
The highlighted word in the second sentence is of the form verb + ed. It is used as a past participle. It denotes the completed action or state of the thing spoken of.
A past participle ends with the following: -ed, -d, -t, -en, or -n.
One should take great care and never get confused between a gerund and a present participle. They use the same forms but perform different functions: a gerund is a verbal noun, while a present participle is a verbal adjective."