You might have a long lunch break, where people go home, eat and come back, making the end of the work day pretty late. But siesta is easy to understand as a southern thing when one notices summer temperatures, and imagines physical labor outside, or a world with no AC. Trying to get anything done at 1:30 PM in, say, Jaen sounds unpleasant. Santander, Oviedo or Coruña are not going to face the same problem.
Spanish siesta's are still just 2-3 hours long. In traditional Indian cultures, people would often work between 6am and 11am and then from 5pm to 9pm, because middle of the day was too hot to do any kind of physical work.
So, I'm definitely going for weather as the reason for the tradition and not any timezone shift. And that also means that office work and air conditioning should reduce this practice over time.