Sometimes resolving these type of weird problems need expertise than an average home user... Did you change anything before this happened?
However, try this for a start
HP Print & Scan Doctor - Download from
https://support.hp.com/in-en/help/diagnostics?category=printing&issue=print-job-stuck
Since you can scan, it looks like a spooling related issue as I mentioned in my first reply. You can try Renaming the spool printer and driver files:
Start a command prompt as an Administrator...
Rename %systemroot%\System32\Spool\Printers Printers.old
Rename %systemroot%\System32\Spool\Drivers\w32x86 w32x86.old
Then Restart the Print Spooler service.... (Services ---> Print Spooler service)
Also did you try printing using a postscript driver instead of PCL (or the other way depending on what you are currently using)