I would keep the development board as development board.
And use an ESP32 board with integrated battery management chip for use with LiPo battery.
A board from TTGo/LilyGo comes to mind. But you should do some research yourself.
If you want to use the Good Display board, you could add a 3.3V buck-boost converter with LiPo. I use some with 2 * 18650 LiPo for some of my SHT31 ESP32-S3 sensor nodes.
-jz-
The answer to your question is dependent on the library or driver source you want to use.
GxEPD2 uses HW SPI and the default HW SPI pins (as of pins_arduino.h of the board package selected to compile for).
Read README.md for such basic information.
See GxEPD2_wiring_examples.h for the suggested wirings; these correspond to the pin parameters in the example.
Except for the SPI pins, you can freely select any free pins for the remaining connections. You just need to adapt the constructor parameters, e.g. in GxEPD2_display_selection_new_style.h.
For ESP32 processors, you can use any other pins for HW SPI, by using the remap feature (function to pin matrix) of the processor. This is supported by the SPIClass of the board package.
Good Display demo sources also use HW SPI for ESP32. And there are #define's for the other pins.
-jz-