Cが使われる理由

そうなのです。PerlPHPPythonRubyも(アルファベット順)、みいぃんなCで書かれているのです。

「この言語を書くための言語」という役割において、Cに置き換わるものというのは未だにありません。確かに一部C++Javaに置き換わったり、GHCのように処理系自身がその言語で書かれたものもありますが、とても主流とは言えないのが現状です。
それはなぜかというと、「世界を書くための言語」というのは「世界の底」に直接アクセスする必要があるから。その点でJavaは少なくとも主流になるのは難しい。VMを前提とすることで「階層」が一つ上がってしまっているから。Cと上位互換のはずのC++もなぜかいまいち流行っていない。多分「Cと上位互換」ということでむしろ「上の階層」を狙ったものになってしまっているから。

JRubyJython も Quercus も IronPython も PyPy も全部無視ですか。Quercus と IronPython なんかオリジナル*1より速いというベンチマークもありますが。あと Sun の Java コンパイラJava で書かれてますね。JVMC++ ですし。
『「世界の底」に直接アクセスする必要』ってのも全然自明でないというか、JVM とか CLI 上で動く実用的な言語な言語があるんだから、別に間接的でいいじゃんというオチ。
まぁ、それとは別にCだとインタープリットが軽く、速くなりやすいという利点はあるが、結局そこをどの程度重視するかという話だろう。で、まぁインタープリタ型の言語なら実際そこが重要なんだけども。ただコンパイラ型の言語ならコンパイル速度なんていまどき重要なファクターでもないし、実装言語で扱えるレイヤなんて関係ない。

だけど、Cを含めて、言語の仕様拡張というのは「より上の階層へ」ということは熱心でも、「下の階層をより使いやすく」という方向にはあまり行かないのはなぜなのだろう....

そりゃ下層レイヤはOSの仕事だからでは。そもそも、ほとんどの人は下層レイヤの話に興味が無いし、下層レイヤのことを考えずにプログラムできるほうを好む。結果、抽象度の高い(もしくは抽象度の高い記述のできる)言語が作られ/使われるのは当然の帰結

*1:CPythonをオリジナルというのは適切ではない気もするが