I think you always have to consider exactly what purpose your music serves.
I've been writing film/game style tunes for some time now and the good thing about it is that I don't get writer's block much because the tracks are only a couple minutes long at most. Or, there are just several variations of the tune which are triggered depending what happens in the game. With a film, it's just playing stuff that works with what's on screen at that second in time - so you have constant inspiration.
Now that I'm starting to just get back into writing songs, I'd been struggling with writing arrangements that were too repetitious. The thing with well composed arrangements that sound really dynamic is that often, it's actually much simpler than it sounds. When I first heard a lot of these "progressive" kinds of bands, it all seemed so complicated that I couldn't understand how they could remember what they were doing.
Then, I realized it's structured mostly the same as any other rock song, it's just that the verse, chorus and bridge repeat several times more. However, there is always some obvious variation that makes it seem drastically different. Aside from new lyrics, the rhythm part might be diminished or augmented, slightly different instrumentation, different phrasing of the melody etc.
TL;DR Your music doesn't have to be any specific length. If it's just 1 - 2 minutes and it sounds great that's fine. If you're done with it you're done. If you need to have it the standard 3 - 4 minutes and you're stumped for a new section. Repeat an old section with some variation.