I'm pretty sure Retorarch does. It works with Retroarch on a Steam Deck and I don't think I did anything special with the default Amiga core used. There is also a method with Retroacrch where you can have individual profiles per game. So for say a 2 disc game you could set up Retroarch to be configured with two simulated drives and load each with a disc, I believe the config allows you to do that as part of the per game setup so it remembers the disc in each drive so you don't have to manually load each one. Then you could have a separate setup for a 4 disc game etc. Then Retroarch can be told to use the relevant setup on a per game basis so it will use that setup when launching that game. I did some googling to find this out and the method looks sound, but whdload is just easier.
Edit: It may be you have to select the PUAE core in retroarch, or download that core first if it not there by default. Then turn on whdload support in the core setting.