I'll begin by saying I do not have any first-hand experience with these transmitter receiver pairs. But it seemed very interesting to me so I did a little bit of research to learn more about how they can be used.
My conclusion is that you probably will not see much improvement in the error-rate of data transmission by altering the existing antennas.
While I can control the power plugs two rooms further with no
problems, receiving the sensor data from there is not possible.
The reason that you find success controlling the power plugs is that the message is very simple (on or off) and there is some error checking built into the data protocol. Also the on or off message is repeated many times with some unique data pattern that can be reliably distinguished from random data meaning that the receiver is smart at ignoring false messages due to random noise.
Similarly you could transmit data packets at a very slow rate, I'll guess at a rate of a few characters per second by using the same error-tolerant technique used for simple on/off messages. You'd implement this with some unique code to indicate begin of data and also you'll need to send some sort of error checking code like a CRC after the data character. The receiver software needs to throw away any characters that are not received with a valid CRC.
From what I found in my research you need to expect a very high error rate in data transmission of 90% error rate or even worse. Your only way to conquer such a poor error rate is to repeat the message (or each data character) many times and have the receiver have some logic to know how to ignore erroneously received characters.
There is a code library called RadioHead that has a good protocol already coded so you do not need to begin with nothing. One comment describing their protocol helps to understand how they solve the noisy data transmission error rate in their code:
Does not use the Arduino UART. Messages are sent with a training preamble, message length and checksum. Messages are sent with 4-to-6 bit encoding for good DC balance, and a CRC checksum for message integrity.
You may ask yourself how or why such product can be marketed that are so unreliable as an error rate of worse than 90%. The reason is they are using frequencies that are assigned to other licensed users. So the cheap devices you use need to be tolerant of interference and also not interfere with the licensed users. You need to write a software protocol to be tolerant of interference and already the modules you chose are not going to present much of a problem interfering with licensed users since the modules have a very low 25mW transmit power which is a very tiny level unlikely to bother your next door neighbor.
Alternatively you could adopt a more expensive transmitter and receiver technology like Bluetooth LE or XBEE where the modules already handle the error checking protocol for you so that you do not need to invent your own software error tolerant protocol. The modules you have begun to use are very nice for their extremely low price, but like all things in engineering you trade one thing for another. In this case the low cost brings more complexity in your application. Keeping the cost down makes sense in mass production but maybe not so much for a single project.