Хранить список указателей на QNetworkReply, а при полученном сигнале finished(либо у QNAM, либо у самого QNetworkReply) убирать из списка.
То есть, каждый QNetworkReply вызывает finished за время своей жизни однозначно только один раз? Не больше и не меньше? И никаких зависаний произойти не может, т.е. если что не так, то ошибка вернется всегда?