Microcontroller and LDO and +5V pull up sneak path
Your fundamental mistake is in thinking that you can pull output pins up to a higher voltage than the MCU is operating at.  With conventional outputs, that not only will not work, but it is something you should not even try to do.

Your MCU's data sheet specifies that an input pin is not allowed to be more than 0.3 volts above the supply pin.  When you exceed that, the protection diode will become forward biased, and an injection current will flow from the I/O pin into the supply rail.  The data sheet does allow you to inject up to 10 mA per pin (and 50 mA total).  But the thing to realize, is that the only way this will get your outputs more than 0.3v closer to 5v, is if the injection current raises the entire board power net.

As Bruce already explained, during run your MCU consumes enough power to absorb the injection current (the regulator simply sources less).   You are stressing the protection diodes, and not really achieving anything useful by doing this, but it may appear as if it "works".

However, when your MCU power drops in sleep mode, now your are not absorbing the injection current, and the supply rises.  Ironically, this puts less stress on your MCU, since it is rated for 5v operation, and the more the supply rises, the less current flows.

Ultimately, your issue is not with sleep mode, your issue is with faulty design for run mode.

You should abandon this idea of pulling the outputs up to a higher voltage - if you want to do that, you need an open collector without protection diodes (ie, something with the topology of the ULN2803).

But what you really should do is build a proper level shifting circuit, or use a buffer rated to interpret 3v3 signals when powered at 5v, such as something from the 74HCT family.