"Say his brother predeceases his father (this is just an example, not a suggestion), does everyone still just move up one?"
You mean, if Frank Eliot, III snuffs it before Frank Eliot, Jr.? Frank Eliot, II would still remain Frank Eliot, II.
A "II" is a "II" throughout the lifetime of the grandfather, uncle, or cousin after whom he was exactly named. Therefore, Frank Eliot, III's demise would have no effect whatsoever on Frank Eliot, II's name, because Frank Eliot, II, was named after his grandfather (Frank Eliot, Jr.) and not after his uncle (Frank Eliot, III).
And, before anyone asks, "What if Scott had named his son after his brother instead of after his father? Would Frank Eliot, II then be Frank Eliot, IV?" Well, to by-pass one's own, still living father that way in naming one's child with the exact same name would have been considered "disrespectful" (or odd, at the very least) in social circles which make a point of using all these flippin' suffixes to begin with.
And let's not even get into those families with multiple cousins named exactly after the same grandfather…
One other instance of "II" being used is when a child (such as a "Franklin Delano Roosevelt, II") has been named exactly after somebody famous (who either may or may not still be alive) and the child is not necessarily closely related (or even related at all) to that person. In this instance, the "II" serves to distinguish the child from his namesake for historical purposes. This is the closest that one may get in American society to imitating the European peerage's use of these suffixes, without being pretentious.
Of course, all these rules are based on etiquette more formally practiced in an era when gentlemen were in the habit of leaving their calling cards at the homes of friends, acquaintances, etc. who were not "at home" during the time of calling.
Nowadays, however, it's etiquette, schmetiquette, as many people pretty much do whatever they please when it comes to the use of suffixes after their names.
Two added notes...
I realize that I'd previously said that a son of Frank Eliot, II would (providing all the Frank Eliots are still alive at the time) be a "Frank Eliot, IV" (indicating that he was named after his uncle instead of after his grandfather. Actually, etiquette dictates that, if there is already a "III" still alive in the family, then out of courtesy the child is not named "III" as well. The preferable (and courteous) thing to do would be to break up the sequence at this point by giving the child a different middle name, which would then automatically negate the need for a suffix after his name.
Additionally, a girl should not be given the masculine suffix of "Jr" after her name. Instead, a female child who is exactly named after her mother or other close relative, is always a "second" (spelled out) or a "younger". Although even these suffixes are generally inadvisable for female children, should not be used on wedding invitations or other announcements, and it is really preferable that a female child be given a different middle name than that of her mother or other close relative so as not to necessitate any kind of suffixes following her name.