When you're hosting a LAN server, your supposed to connect by first selecting "Query LAN". You clearly already know this since there's no problem connecting when hosting a LAN server.
However, when hosting a public internet server, your brother must still select "Query LAN" before joining because he's on the same network as you.
The reason why someone on the same network as you must still select "Query LAN" before joining is because, since they're on the same network as you, they actually have the same public IP address as you. This confuses the server, which is why he must connect through a LAN connection. When connecting through the LAN, the server instead uses his local IP address, which should be different from yours. This makes the server less confused, therefore making it possible for him to join.