Es ist eh fragwürdig, wenn du nach dem update() erstmal ne Pause machen MUSST. Da stimmt was nicht
Dein Problem ist einfach, dass nach dem update() erstmal nix passiert, außer dass ein event getriggert wird. Wenn Qt wieder in die EVentLoop darf, werden auch brav alle Events abgearbeitet. Und genau das passiert noch nicht, wenn die Funktion noch nicht durch ist. Da hilft kein Sleep. Da hilft nur ein
QCoreApplication::processEvents(), von dem ich kein allzugroßer Freund bin

Vor allem wenn du in ner Schleife sitzt und in jedem Schleifendurchgang alle Events abarbeiten willst...