So, after some great help from igrr and d-a-v, I've managed to create another static binary to link against (installed mingw, modified lwipopts.h, and ran make install).
This process created (in Windows)
I then modified
C:\Users\<yourname>\.platformio\platforms\espressif8266_stage\builder\frameworks\arduino.py to change
lwip_src so that the linker would use this new file instead.
...and it worked - Yay.
This doesn't, however, seem like a 'good' way to do it.
Is there a way I can use one of the a variants in Boards.txt to override this -
coredev.menu.LwIPVariant.OpenSource=Open Source (gcc)