When you are in the US, you only have status, and status allow you to stay. When you are outside the US, you need visa to enter, and visa does not allow to stay. Once you come to the airport, the immigration will issue I-94, that is status. It is I-94, not visa, allows you to stay. So if you change your status in the US, you change from F-1 to H-1, that is status, not visa. Once you leave US, you lose your status, and need to pally visa to come back and regain your status. So your lawyer is right. Every one is the same.