I've been reading about it and many sites explain (unconvincingly, for me) that the reason why Spaniards currently have lunch around 2 and dinner around 9:30 is because during the 40s (after the civil war), people had to get a couple of jobs to make ends meet and could not keep normal meal times, like in other countries. Spain seem to be the only country in the world with those meal times and the explanation given does not clarify things in the lest. Other countries suffered equally the effects of wars and nothing changed.
Are there any other reasons?