looking at stm32wl datasheets(stm32 in general) it should be possible to write MySensors compatible bootloader capable of rewriting entire remaining flash(similar to nrf24(l)01 bootloder), or do dual bank firmware upgrades.
P.S it seems that RLSX126x driver from your repo uses wrong mux pins for wio-e5-le, that would explain abysmal range you're getting:
#if defined(WIOE5LE)
// Set RF switch configuration for Seeed WIO-E5-LE module
// E5-LE is always Low Power Transmit. Antenna setting PA4 1; PA5 0 = receive. PA4 0; PA5 1 = transmit.
static const uint32_t rfswitch_pins[] = {PA4, PA5, RADIOLIB_NC, RADIOLIB_NC, RADIOLIB_NC};
static const Module::RfSwitchMode_t rfswitch_table[] = {
{STM32WLx::MODE_IDLE, {LOW, LOW}},
{STM32WLx::MODE_RX, {HIGH, LOW}},
{STM32WLx::MODE_TX_LP, {LOW, HIGH}},
END_OF_MODE_TABLE,
everywhere i check for wio-e5-le it shoudl be
{STM32WLx::MODE_TX_LP, {HIGH, LOW}},
my modules didn't arrive yet so i cannot test it myself.