What I've actually discovered is that I have no problems staying connected with another IRC client. The problem seems clearly to be something specific to Mirc - could it be "identifying" itself differently and triggering something?
Something else I've just learned, actually, is that as long as I'm "talking" constantly, the connection stays live. Letting it idle now to see if it dumps, based on past behaviour it should ping out in 121 seconds. Went into the options and unhid the ping/pong event, and it looks like Mirc manages two pings on an otherwise idle connection before it dies. Could that be it? And if so, why is this suddenly an issue now? This is literally the second question I've ever asked in this forum - the first was in 2009.
I've never used a VPN, so I have no idea what to tell you about that.
EDIT: I recently tried downgrading to 7.29, and also doing a portable install of 7.43 and running it directly from the .exe. No success in either case. Installing/running 6.35 in a separate directory also has the same issue.