For four-hour gigs, I like to play a full hour in the first or second set and 45-minute sets for the rest, with 15-minute breaks. The reason is so you're not stuck with a one-hour set at the end when you're all tired and the crowd is smaller.
Yup. As a rule, if you have to play a long set to make the timing work out right, it's better (for both the band and the audience) if the long set comes earlier in the night.
I've had quite a few gigs where the party is rolling so good early on that we'll go a full hour on each of the first two sets... and then the last set only winds up being a half-hour but I've never run into any trouble with bar owners or clients when that happens. It seems like especially now with DUI enforcement really ramping up, people aren't staying in clubs much past midnite no matter how much they're into the band... so it makes sense to "front load" your show and get your best stuff out there relatively early in the night when you have the most people there to enjoy it. A lot of venues will give you latitude on this (especially if you've got a good sized crowd and you're working them well), however on things like casino jobs they can be VERY picky about sticking to prescribed on- and off-times.
To answer the immediate question at hand, 15-minute breaks are pretty standard, and you would take two of them in a 3-hour show or three of them on a 4-hour job. Sometimes you can push the breaks to 20 mins but never more than that or the client will feel gypped and you may start losing your crowd.
