How can a DC spark create EM waves?
The spark, unless it is a continuous steady arc, will fluctuate in intensity. This means it will have an AC component even if the current never goes in reverse. In practice sparks are very noisy and will generate frequencies over a broad spectrum.
It is not the DC part itself. It is the raising edge. The spark creates a square-like waveform which actually consists of infinitely many sine waves. That is explained by the Fourier transformation. Have a look at the following image to see how many sine waves can create a square one.
We usually use the math of sine waves ("AC") to analyze electromagnetic radiation, and there are good reasons for this. However, the first treatment of how charge generates radiation that my generation of MIT physics students encountered was different.
Consider an isolated charge, not accelerating. Its electric field lines simply point away from it uniformly. Now, move it to one side suddenly. Afterward, its electric field lines still point away uniformly, but from a different place. It's not hard to show, using Maxwell's equations, that the boundary between the space where the field lines originate from the first position and the second will expand as a sphere at the speed of light. On the boundary, the field lines are kinked. That's an expanding, non-sinusoidal electromagnetic wave.
Your spark gap isn't exactly this, but it is closely related: a bunch of charge suddenly moves across the gap. The return current through your power supply is a complication, but the basic result, an impulsive non-sinusoidal electromagnetic wave, is similar.