Avoir bit champ de type signifie que vous devez utiliser des valeurs brutes comme solution de contournement chaque fois que vous insérez/mettez à jour ce champ.
C'est parce que PDO par défaut liera ces valeurs et elles seront traitées comme des chaînes, donc bit donnera 1 :
DB::table('table')->insert(['bit_field' => 0]); // inserts 1
DB::table('table')->insert(['bit_field' => DB::raw(0)]); // inserts 0
Et je suggère de le changer en tinyint si vous pouviez.