Remember that the BT module is essentially just a radio with protocol. It needs to be connected to something to be of any use. A module with power attached sitting by itself will really do nothing.
On to the bigger question. Let's assume you're connected to an Arduino or some other MCU. You can send it AT commands all day long as long as the KEY pin is held high. In whatever software you write to use the BT as a radio link, include a command that, when received and processed, will send the MCU off to a function that will toggle an output pin connected to KEY. The only reason you would need to be physically next to the module and pull KEY high on power-up would be to put it at a 'factory default' baud rate 38400. If you allow in your software complete access to all AT commands, it is possible that you can change the baud rate remotely so that it no longer communicates with the MPU. At this time a physical reset is necessary. Better if you program a parser for the BT module so you can filter which commands are okay.
I use an HC05 for my remote relays and a simple Bluetooth Terminal app on my Samsung to send command line instructions to switch relays on and off or to change the alarm times. With the Arduino I use Softwareserial at what ever buad rate I choose. These are hard coded in the Arduino and cannot be changed.
Good luck. I hope I've given you something to think about.