失礼しました
正方形のサンプルを新規で直したらフツーに動きました

逆にコレから肉付けしていきます

以下にソースを

int x, y;
private void Form1_Load(object sender, EventArgs e)
{
x = this.Width;
y = this.Height;
}
private void Form1_Resize(object sender, EventArgs e)
{
Control control = (Control)sender;
if (Math.Abs(control.Size.Height - y) > Math.Abs(control.Size.Width - x)){
control.Size = new Size(control.Size.Height, control.Size.Height);
}
else{
control.Size = new Size(control.Size.Width, control.Size.Width);
}
this.Refresh();
}
private void Form1_ResizeEnd(object sender, EventArgs e)
{
Control control = (Control)sender;
x = control.Size.Width;
y = control.Size.Height;
}

スレ汚しごめんなさい