Complete Divine’s ur-priest prestige class can, like apostle of peace, gain 9th-level spells in 9 class levels, and unlike apostle of peace, can be entered as early as 6th.1 That means a 7th-level ur-priest, a 12th-level character overall, has 7th-level spells—while a 12th-level wizard has a cap of 6th. The wizard does eventually catch up with the ur-priest, but only at 17th level, when both are capped at 9th-level spells, which is the limit for non-cheese, non-epic spellcasters. So for five levels—12th, 13th, 14th, 15th, and 16th—the ur-priest has higher spell level than a single-classed wizard does.
To manage to get ahead of the wizard before 12th requires early entry cheese. A friendly bard’s inspire greatness and a friendly psion’s psychic reformation could get you into ur-priest at 4th instead of 6th,2 for example, allowing the ur-priest to be ahead for seven levels.
Or you could be truly abusive, and use polymorph effects to qualify for the beholder mage prestige class from Lords of Madness—like ur-priest et al. it allows 9th-level spells in 9 class levels, and its only requirements are “be a true beholder” and “put out your central antimagic eye.” Anything that turns you into a true beholder for the duration of your level-up could work, as early as 2nd level if you really wanted.3 Such a character would surpass the wizard as early as 4th level, and again the wizard would only catch up at 17th, when both are capped at 9th-level spells.
To avoid the wizard catching up at 17th level requires surpassing 9th-level spells before then. However, 9th level is supposed to be a hard cap on the spellcasting of non-epic characters. The Epic feat Improved Spell Capacity would allow any of these characters with 9th-level spells to gain a 10th-level spell slot, but as an Epic feat, no character has the option of selecting it until 21st level...
...unless they are a dragon. Draconomicon says dragons of Old age or older can select Epic feats even if they aren’t epic themselves. And Races of the Dragon allows a kobold to take the Dragonwrought feat in order to become a Dragon-type creature, complete with draconic age categories. As such, an Old-or-older Dragonwrought kobold ur-priest or beholder mage could take Improved Spell Capacity with their next feat after achieving 9th-level spells—12th or 15th depending on the route used to get there.
So at 12th level, or at latest 15th level, we have 10th-level spell slots. These are only spell slots—you can fill them by using metamagic on your existing spells, but there are no 10th-level or higher spells in the game. They simply don’t exist in D&D 3e; Lost Empires of Faerûn even discusses how Mystra banned them in the transition between AD&D 2e and D&D 3e, since they used to exist and were in important to the history of the Forgotten Realms, so their disappearance had to be explained. There is the Epic Spellcasting feat, and the spells created through that system “have no fixed level. However, for purposes of Concentration checks, spell resistance, and other possible situations where spell level is important, epic spells are all treated as if they were 10th-level spells.” Getting the Epic Spellcasting feat pre-epic is harder—it requires 24 ranks in two different skills, which is impossible before 21st level without cheese.4
But for the purposes of this question, it is easier to just take the Epic feat Improved Heighten Spell, which will allow us to make our 9th-and-lower-level spells truly count as 10th-and-higher. Improved Heighten Spell requires just 20 ranks in Spellcraft, available with no cheese at 17th, so this character can just take that at 18th, well before a typical (non-Dragon) wizard could. If we really care that we are using our 10th-level or 11th-level spell slots for metamagic’d spells that don’t technically count as 10th-level or 11th-level spells, and the wizard also has true 9th-level slots at 17th along with us, we could also use inspire greatness (again) to take Improved Heighten Spell at 15th. For the beholder mage version, we already have had our first Improved Spell Capacity since 12th, so that allows “true” 10th-level spells at 15th, and then 18th can be Improved Spell Capacity again to allow 11th-level spells, and so on.
So yes, it is possible to make a character who gets 3rd-level spells while a single-classed wizard is still limited to 2nd-level spells, and then to continue gaining new spell levels ahead of the wizard indefinitely. For the first three levels of the game, the character has exactly the same spell levels as the wizard, too.
I hope it goes without saying that none of this should be considered for a real game. D&D breaks down hard at these levels of power, and it is almost impossible to actually challenge such a character. There are game systems designed for godly characters like this, and would be a vastly superior choice if these kinds of power levels were desired—those systems have details and limitations in place that allow for appropriate challenges to be brought. D&D largely does not.
The blighter prestige class, also from Complete Divine, can be entered at 7th trivially, and could be cheesed to 6th as well if one were so inclined. So could divine crusader, Complete Divine again, and for that matter, apostle of peace probably could too. Complete Arcane’s sublime chord also gets 9th-level spells in 9 levels, but would be far harder to cheese that early. The beholder mage, from Lords of Madness, is another such class, but is supposed to be for “true beholders” only. As the discussed later in the answer, though, that can be cheesed around.
Inspire greatness gives you 2 HD, allowing you to have a skill cap of 8 at 3rd. Psychic reformation would then let you re-arrange your skill points to use that cap.
A single casting of polymorph any object with Assume Supernatural Ability or Metamorphic Transfer can do it; how to achieve that at 1st level is left as an exercise for the reader. LordOfProcrastination’s Dirty Trick #1 may be worthwhile reading here, as could the various approaches to 1st-level Pun-Pun ascension: just about anything that can do that can also do this.
As if that was stopping us at this point...