Most likely you've opened one treasure chest too many. There are four treasure chests in the whole game that you must NOT open if you want the chest with the Zodiac Spear in it to appear. These are: In front of Old Dalan's house in Lowtown In the southeast corner of Cellars in Royal Palace of Rabanastre In the Confiscatory in Nalbina Dungeons In the 4x4 pot grid in Vaddu Strand in Phon Coast
If you open even one of these, you can't get the Zodiac Spear from the Necrohol of Nabudis, however, there is another way to get it. You must have at least 10 Espers and have completed the Mindflayer hunt. Travel to Phase 2 Dig in the Henne Mines (accessed via Ore Separation after speaking to Geomancer in Jahara). You must have a Diamond Armlet equipped in order to receive the Zodiac Spear from the chest that appears in this area, which has a 10% chance of appearing, a 10% chance of containing an item, and a 10% chance of said item being the Zodiac Spear. That means you have a 1 in 100 chance of obtaining the Zodiac Spear from this chest. Have fun!