The Shift1-LCD PCB will do what you need, it will drive a 4x20 display no problems from 1 PIC output pin. All it needs is a shift register IC and 2 resistors and 2 caps.
As for the 4 buttons, you can connect them to the D4-D7 data pins of the LCD, and connect the other side of the buttons to one common which comes back to the PIC on one input pin.
So you get 4x20 LCD and 4 buttons using just 2 PIC pins.
There is more info in this thread;
https://www.electro-tech-online.com/threads/shift1-system-drives-lcd-from-1-pic-pin.99634/
The shift1 PCB makes it really quick to get a LCD application up and running or to make a smart display or remote display etc. I've got plenty of kits made up for them and good bulk discounts too.