Whether 7 nights is too short for a cruise is a personal matter. Some people think 4 nights is too long! Personally, we only prefer cruises that are at least 10 to 12 nights. 7 nights just happens to be more preferred, especially by families, because that's the normal vacation time people have.
And yes, the Epic is geared towards families, so there are areas for teens. And because it's Summer, there will be more teens onboard than at other times of the year.
I think you'll enjoy this ship.