exec("convert \"{$strPDF}[0]\" -colorspace RGB -geometry 96x96 -border 50 -gravity center -crop 100x100+0+0 -background white \"thumb_pdf.jpg\"");
I really don't understand why you have included -geometry 96x96 as it does nothing here. Also why -border 50 unless the resulting pdf is too small (and if you really need it then you need to add -bordercolor white).
The size of the pdf is controlled by -density and not -geometry or -size or -resize. So add the appropriate -density value to make it bigger or smaller.
But try this:
exec("convert -colorspace RGB \"{$strPDF}[0]\" -gravity center -background white -crop 100x100+0+0 +repage \"thumb_pdf.jpg\"");
or for higher quality (supersampling)
exec("convert -colorspace RGB -density 288 \"{$strPDF}[0]\" -resize 25% -gravity center -background white -crop 100x100+0+0 +repage \"thumb_pdf.jpg\"");
If these are too small, then increase the density (above 72)
exec("convert -colorspace RGB -density 150 \"{$strPDF}[0]\" -gravity center -background white -crop 100x100+0+0 +repage \"thumb_pdf.jpg\"");
or if you want to add a white border, use
exec("convert -colorspace RGB \"{$strPDF}[0]\" -gravity center -bordercolor white -border 50 -background white -crop 100x100+0+0 +repage \"thumb_pdf.jpg\"");
etc with the higher quality one
Let us know what you get so we can then try to fine tune it for your needs. Explain if not correct, what is wrong and link to the results.