ESP32 Memory Leak?

Genau. Vor der Benutzung in der Funktion ein Array mit sagen wir mal 25 anlegen (ohne new) vor for und a hinen die Sachen mi9t snprintf (anstelle von sprintf) schreiben. Das brauchst Du beim Verlassen der Funktion auch nicht aufräumen.
Auch das

class Instr
{
public:
  std::string command;

Könnte man noch auf char-Arrays umbauen, da die Maximallänge auch dort bekannt sein dürfte.

Gruß Tommy