Du musst die Variablen nicht im OnCreate mitgeben.
Versuch's mal so:
Delphi-Quellcode:
Thread := TMyThread.Create;
Thread.Variable1 := Variable1;
[...]
Thread.Resume;
Also einfach als Eigenschaften des Threads. Du musst nur beachten, dass der Thread erst beim Resume() losläuft, und nicht schon im Konstruktor.