Das TJvTimer-Event wird standardmäßig in einem Thread ausgeführt.
Und dafür, dass du unsynchronisiert auf die
VCL zugreifst, wirst du vollkommen zu Recht mit Fehlverhalten bestraft.
DataSet.DisableControls und EnableContols im Haupthtread
eventuell auch/alternativ die DataSource vom Grid abhängen
und dann kann man das DataSet gern in einem Thread aktualisieren
Alternativ im Thread ein neues DataSet holen
und das danach dann im Hauptthread schnell umhängen.