Instead of inducing performance overhead, why not use an extension method to alleviate both problems:
public static void Raise(this EventHandler handler, object sender, EventArgs e)
{
if(handler != null)
{
handler(sender, e);
}
}
Once defined, you never have to do another null event check again:
// Works, even for null events.
MyButtonClick.Raise(this, EventArgs.Empty);