Overtones Produced From Speaker Load on Asymmetric Square Wave
First, you can easily make a nice square wave from any duty cycle pulse train by running it thru a toggle flip-flop.  That's basically using it as a 1-bit counter.  That divides the frequency by 2, so you compensate by doubling the pulse train frequency.

To your question, every sharp edge contains lots of high frequencies.  Especially if the pulse frequency is long enough, then the speaker could be resonating for a little while at one of those frequencies.  Better speakers would do this less, but all speakers have some resonances somewhere.

One way to deal with this is to low pass filter the square wave before using it to drive a speaker.  Certainly filtering anything you can't hear anyway is free, but often there is a lower upper bound on legitimate frequencies.  You still get lots of harmonics from low frequency square waves before the filter kicks in, but those are what makes the result sound like a square wave instead of sine wave or some other wave shape.