Bis auf den Fakt, dass eine "Lib" nichts erben kann - ja.
Du hast eine DLL, die dir über eine Factory-Methode (Methode mit festem Namen, die von einem LibLoader geladen werden kann -> extern "C" deklariert") eine Factory-Klasse für Commands liefert.
Ob du hierfür die Qt-Infrastruktur für Plugins verwendest (vorsicht: QPluginLoader::instance() ist IMMER die selbe Instanz!) oder selber via QLibrary sollte wurscht sein.
Du hast dann halt pro dll zwei Klassen - die CommandFactory und das eigentliche Command.
Und bevor du das jetzt gleich in dein eh schon dickes (?) Projekt einflickst, solltest du das im Kleinen an einem primitiven Test ausprobieren