I had the same thing happen to me. Two years ago, I started with the formula, 220-age, which gave me a max at the time of (220-62)=158. Within a month, I knew that was too low, because I often spent 30 minutes or more above 158. So I raised it to 165. After a year, I routinely exceeded that. Now I often hit 171 to 173, so I've reset my max again.
My admittedly unscientific explanation for this is: HR is a "lagging indicator". That is, you first exert yourself, and then your HR "catches up". It may take a minute or two to do that. When you're not in the best shape, you reach what you think is you max, and then you get tired out immediately, so you back off. Consequently, your HR never really reaches the max. But when you get in much better shape, you can sustain a maximum effort for longer, so your HR catches up.
Some people say that getting to your max is bad for you, but everything I've read says it's OK, as long as your heart is in good shape. And once you reach your max, it won't take more than a minute or so before you have to back off, whether you want to or not.
As I said, just my opinion based on a sample size of 1.