Arduino two Bluetooth HC-05, receiving different values on the receiver

You are reading single ASCII characters (not values) without first checking whether any characters are there to be read.

This writes a single 8 bit binary value (not the integer value of "weather"):

    int weather = 800;
    BT.write(weather);

There is a good introduction to serial communications on this forum at Serial Input Basics - updated