Before shops were allowed to open on a Sunday, the government decided that they would be allowed to open, but only for 6 hours. It is all to do with them not wanting family life disrupted too much and people not having to spend 'the day of rest' working, etc. Basically they are trying not to alter tradition too much, as shops would open at all times if they could.
I think the size that determines whether a shop is small or not is 3000 square feet of floor area.
It was also a 'sop' to the CofE who lobbied for the constraint - which is why no shop is allowed to open on Easter Sunday.