3点ほど誤解されている点があると思います。
1点目。
bootstrap=Falseを、ランダムフォレストと分類されているのは、正確ではないと思います。ランダムフォレストという機械学習手法は、ブートストラップサンプリングを特徴の1つとして、それにより精度を向上させているものです。scikit-learnのオプションでbootstrap=Falseにできたからといって、それはもはや「ランダムフォレスト」とは呼べません。また、このことから感覚的に(あとでもう少しきちんと言いますが)「bootstrap=Trueの方が精度が良くなりました」は当たり前だと分かるでしょう。それがランダムフォレストの「工夫」なのですから。
2点目。
bootstrap=Trueにより**「学習サンプル」が減ると解釈されているのは、正確ではない**と思います。1つの決定木はランダムにサンプリングした学習データで求めますが、結局、アンサンブルした状態では、元の学習データを全て使っています。
3点目。
学習サンプルの多さのみが機械学習の精度を決定している、というのも正確ではないです。機械学習は、特徴量の選定方法、前処理、アルゴリズム、等々、多様な要素が影響して、精度に帰結しています。2点目の議論で学習サンプルは減っていないと申しましたが、その件とは別に、ランダムフォレストは、各決定木のアンサンブルをする、という手法で、比較的滑らかなモデルを獲得しています。それにより、汎化性能=未知のデータに対する推論時の精度、を向上させています。
参考: Random Forest