Precede -exec with -print. This way the pathname will be printed by find before the respective pdfinfo prints its output. -print is the default action (e.g. when you run sole find .), but the presence of -exec suppresses the default.
If you prefer the pathname after the output of the respective pdfinfo then you may try -exec … -print, but note in this case -print will be performed iff -exec (i.e. pdfinfo) succeeds. In general one uses -exec … -print when -exec is used as a test. In the context of your question I personally prefer the pathname first, so -print -exec ….
Then you need to adjust your grep. Use the fact every pathname considered by find . must start with .. grep -E '^(\.|Pages)' matches lines with a literal dot at the beginning or the string Pages at the beginning.
The final command will be:
find . -name \*.pdf -print -exec pdfinfo {} \; | grep -E '^(\.|Pages)'
(redirect the output on your own).
Consider -type f as the first test in case some non-regular file matches -name \*.pdf by chance. This will avoid calling pdfinfo on directories and such.