Several things come to mind...
If you've been "cycling" for three months, have you been supplying it with an ammonia source all that time? What did you do to start the cycle? Reason I ask is that without an ammonia source, over that long of a period, you might've had a die off of the bacteria. And somewhere, I've read that a bacterial die off can actually trigger an ammonia spike in itself. It's hard for me to believe that, but I *think* I read it in Fenner's book.
Do you have any measurable nitrates? If you've truly cycled, then you should have some nitrates in your tank.
Also... were you measuring nitrites while you were cycling? Did you see those go up, then come back down? If so, then you probably did cycle. Whether or not the bacteria are still alive and kicking... I guess that goes back to my comments in my first paragraph.
And as others have mentioned, best to rule out a faulty ammonia test kit by getting another one, or having the LFS
test it for you.