スタック領域に積んだ値は、関数がネストしてもFrame Pointerから遡って参照することができると理解しているのですが、
その場合、より深い場所にある値の上書きはできないのでしょうか?

また、できないとすればそれはなぜなのでしょう。
セキュリティでしょうか?

ただし、代入する値のサイズがもとの値以下であり、Growableでないことを前提とします。

無駄に手書きですが、こういうイメージです

 ーーーーーーー
|            |
|    関数     |
|            |
| ローカル変数 <-|
 ----------- | |
|            | |  上書きしたい
| ネストした  ---
|   関数      |
|            |
 ーーーーーーー