I have friends who's daughter has a Dec. birthday right before Christmas. They have a friends party each year in June for her 1/2 birthday. For them it works and everyone understands because the invites say 'B's # 1/2 birthday'.
For me, 3 weeks before or after is usually the max. Although next year Easter is at the end of March, beginning of April, so maybe you could have an Easter Egg Hunt in place of a party?
Oh, and we always give our gifts to the kids ON their birthday, never at their party with friends.
I do that. One year Spring Break was the week of my son's birthday. Easter was a few days after. We had a huge 3 yard egg hunt during the day of his birthday (to give the kids something to do), ordered pizza, passed out juice boxes and frosted cookies. When we got to the cookies I said 'by the way, today is C's birthday, so lets sing to him'. Everyone had a blast.
For my daughter, her birthday is near Halloween, so we hold a Halloween party and sing. Last year for her 'outdoor' party we had a freak hail and snow storm. Had to move everything inside. Pinatas in the garage. The next day is was sunny and 70!
Why do I do that? So my kids can see that parties are about the friends around you, not the gifts that they bring. To me its the best of both worlds.
It also helps when you hold the party later, parents won't then feel like you are holding a party just for the presents.