How about using ECC point multiplication and AES:
[...]
I like this scheme more because it allows to efficiently encrypt messages of arbitrary sizes.
It's indeed much more efficient
Just out of curiosity, is it possible to tweak this a bit to make the sender unable to read the crypted message?
What do you mean? Sender must know the message it is about to send.
I was thinking about the private key s. The computer I'm using everyday should be safe but I wouldn't trust it for something risky.
If I use your method, the computer may keep s somewhere (HDD, RAM, bash history, etc) and if it's compromised the attacker might be able to retrieve it and decrypt the message.
Now that I'm writing it I realize that the same goes for the message and the random N...