You cannot run mixed 32-64bits executables and dll's. Not even static libs.
You can run an executable compiled for 32 bits under a windows 64bits OS, but
not the reverse.
I'm not sure that is your problem the fact that your 32 bits program doesn't run on the 64 bits machine. Probably the problem is on the 64bit machine (the DLL is correctly installed?)
The best solution is to recompile your sources with 64 bits compiler.
And yes you can compile on a system programs for different systems, processors and even OS's. This is called
Cross-Compiling, and PellesC is a cross compiler for 32 and 64 bits, but unfortunately this possibility is available only with the 64 bits version of PellesC....
Last there should be around some preliminary static library versions of SDL. A solution can be to try to link with the static library to get a single executable to avoid to deal with the DLL.