Hi Kovid, yeah I've been going back and forth in my mind about it. My initial thought was exactly the same as yours of adding a checkbox to control the behaviour. Then I worried about adding "yet another" option to the GUI, and whether you make it at the per list or at plugin level.
There is arguably one significant difference between what this plugin does, and that dialog being triggered elsewhere in calibre. The removal of books is a delayed action (unlike a user accidentally choosing the wrong "Remove" option on a right click. If a user modifies a reading list, they have the opportunity to reverse that action before they plugin or manually sync to their device. So they can review their list before actually sync.
Since the plugin only removes books that also exist in calibre, in normal usage there should be no harm caused by a user "screwing up" and removing a book. However there are always edge cases I guess - such as a user accidentally removing the format for a book, and their only copy existing on the device, that they then contrive to somehow accidentally put on a reading list for removal
So - if I make it an optional dialog to avoid, the simplest option may be to stick it on the Other Options tab in the plugin configuration, and make it apply across all lists.