Wi-Fi disconnecting when "under load"

At some point towards the end of last year (2019), Wi-Fi started frequently dropping off and then automatically reconnecting on my MacBook Air 2018.

At least two things happened around that time, that could have triggered the issue, but I do not remember when they happened and in which order, and whether it even was before or after the issue started occurring:

  • macOS update from Mojave to Catalina,
  • light drop of the laptop, which didn't seem to have affected anything else.

Things I gradually noticed during the investigation:

  • My connection is 50Mbs down / 4Mbs up, and it seems to be easier to reproduce when uploading data rather than downloading. Consistently able to reproduce when on a Skype call.
  • Eventually able to reproduce when downloading a file from test FTP server, even with very low speed limit set on client side.
  • Able to reproduce at home with 802.11n (2.4 GHz) network.
  • Unable to reproduce at home with wired connection.
  • Unable to reproduce at home with any other device using wireless connection, including another mac laptop (MacBook Pro 2018), Android phone (Motorola moto G6), and Windows laptop (Asus Y50-70).
  • Unable to reproduce in the office, where network is mixed 802.11ac (5 GHz) / 802.11n (2.4 GHz).
  • When watching /var/log/wifi.log around the disconnect events, the following line caught my attention for some reason:
    <kernel> AppleBCMWLANCore::getSSIDData(): Get failure: APPLE80211_IOC_SSID: -528342013
    

Various tweaks I tried, none of which helped:

  • Changing home router settings (transmission mode between b, g, n and mixed b/g/n; transmission rate; channel; channel width between 20 and 20/40 MHz; multicast rate)
  • Disabling IPv6
  • Resetting NVRAM
  • Wipe all WiFi settings from MacBook
  • Lowering MTU

I was eventually able to resolve it by following the suggestions from Bluetooth headphones disconnect a few seconds after connecting on macOS, namely:

  1. https://apple.stackexchange.com/a/344552 by Gummibando:

    Try resetting the Bluetooth module.
    Shift-Option click the BT menu bar item > Debug > Reset the Bluetooth module.

  2. https://apple.stackexchange.com/a/380827 by Kundan Burnwal:
    1. Delete /Library/Preferences/com.apple.Bluetooth.plist
    2. Clear PRAM according to Apple's instructions by rebooting and holding down Command +Option+P+R for roughly 20 seconds until either the second startup sound plays or Apple logo appears and disappears for a second time.

P.S. I think it is worth noting that the steps for resetting NVRAM and PRAM are the same, and did already try "the former", but that time it coincided with a minor macOS version update, which could have affected the reset procedure in some way.

Upd: unfortunately, pairing back and connecting a Bluetooth device (e.g., headphones) brings the issue back, so this whole workaround is just that — a workaround.