Метод findChild()
ищет имя объекта, а не заголовок, в вашем случае подменю не имеют имени, поэтому он возвращает пустой список, поэтому вам следует сначала отфильтровать QMenu
а затем выполните второй фильтр с заголовками:
#include <algorithm>
...
QString text("A...");
// get sub-menus
QList<QMenu *> sub_menus = lMenu->findChildren<QMenu *>();
// filter by title
if(std::find_if(sub_menus.begin(), sub_menus.end(),
[text] (QMenu *menu){ return menu->title() == text; }) == sub_menus.end())
{
lMenu->addMenu("A...");
}