Leider kann man nichts dagegen tun, wenn sich PCIe-Karten wider Erwartung als hotswapfähig melden. Sicherlich wäre das auch unter Linux der Fall (vergleiche deine dmesg-Angabe), nur müsste man für funktionierendes PCIe-Hotswap da in der Regel noch Hand anlegen.
Was Blue meint: Für den Standard-MS-Treiber msahci kann man per Registry-Zweig bestimmte SATA-Ports als intern markieren, da standardmäßig alle als auswerfbar angesehen werden, wenn der SATA-Controller darüber keine Angaben macht.
EDIT: Man kann evtl. mit dem Registry-Zweig HKLM\SYSTEM\CurrentControlSet\services\pci\Parameters herumspielen, der für ein bestimmtes PCI-Gerät (z. B. Schlüssel "80863500" für Vendor-ID 0x8086 und Device-ID 0x3500) ein 64 Bit großes Bitfeld mit Parametern erlaubt. Allerdings habe ich noch keine Dokumentation dafür gefunden. Gegebenfalls wäre ein Blick in die INF-Datei für einen Treiber dieser Hardware, ggf. für ein älteres Windows, sinnvoll.
EDIT 2: Nach dem Quellcode von ReactOS (der aus Quellen von Microsoft stammt) gibt es ein Bit namens PCI_HACK_NEVER_DISCONNECT PCI_HACK_DISABLE_HOT_PLUG, das versprechend klingt. Dafür müsste man einen Wert der Form
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\pci\Parameters]
"CAFEBABE"=hex:00,00,08,00,00,00,00,00
setzen.
EDIT 3: Dieser Hack ist in der Tat in freier Wildbahn für ein paar Geräte zu finden, wenn man nach dem Registry-Schlüssel in Verbindung mit "hex:00,00,08,00,00,00,00,00" sucht.