There's a few reasons for it, but one of the most notable is related to how most of us start listening to music which is the radio. Think about it from a radio station's perspective. They can only play so many songs in a given time and they want to make sure that they cover as many songs as possible. Assuming no ads (which is very rare), they can only play a total of 12 songs an hour. Just cutting a song down to 4 minutes allows 3 more songs to be played an hour which makes quite a difference in the long run.