As pointed in [comment][1]

1. _"encrypt" with sender's private key_ is improper terminology; the proper term is _sign_. I took the liberty to fix that all too common mistake in the question. If we used anything else than trapdoor-permutation-based public-key cryptography (RSA, Rabin for the most), _"encrypt" with sender's private key_ would be plain unintelligible.
2. It's assumed $n_r>n_s$ so that $c_1<n_r$, which is necessary to get $\widetilde{c_1}=c_1$. Thus the technique won't "work" with 100% reliability in both directions unless we take some precaution.

Also, the issue of padding is ignored. And more broadly the security goals are not stated.

Issue 2 can be solved in a number of ways:
- The best is to use separate keys for signature and encryption, with a maximum $n$ for the first applied (signature in the question) lower than the minimum for the second. That also abides to the time-proven principle: _one usage, one key_. It also avoids ending up with $c_2=m$ when the sender is the receiver, something an adversary might induce.
- Another option is to force all $n$ to share the same bit size and many high order bits (say 512, which become a fixed public arbitrary constant). That insures $c_1<n_r$ with overwhelming probability. It does not solve the send-to-self issue.
- Yet another is to require all $n$ to have the same bit size, restrict to (say) even $m$, and use $c_1\gets \min\bigl((m^{d_s}\bmod n_s),(-m^{d_s}\bmod n_s)\bigr)$. On decryption, we'll have either $m=\widetilde{c_2}$ or $m=n-\widetilde{c_2}$, and the parity of $m$ allows to determine which. It does not solve the send-to-self issue.
- A variant of the above forces $m<\min(n)/2$, which also allows recovery of $m$.

Another issue is that that both RSA encryption and signing require redundancy for security; plus encryption requires random padding (or unguessable plaintext) in what's processed with textbook RSA encryption. For this reason, it's best to proceed in the order:
- pad $m$ with randomness and redundancy
- encrypt with textbook RSA using public key $(n_r,e_r)$ [in it's instance for encryption, if distinct from signature]
- sign with textbook RSA using private key $(n_s,e_s)$ [in it's instance for signature]

An example of that is in the [RSA-based authentication protocol][2] between Smart Card and (pan-)European Digital Tachograph (designed circa the end of the 20<sup>th</sup> century, I wish I knew by who). It uses the $\min$ and even padded message trick. A modern variant would use [RSAES-OAEP][3] padding and the $m<\min(n)/2$ trick, or best separate encryption and decryption keys.


  [1]: https://crypto.stackexchange.com/posts/comments/199064
  [2]: https://eur-lex.europa.eu/legal-content/EN/TXT/PDF/?uri=CELEX:32016R0799&from=EN#page=351
  [3]: https://pkcs1.grieu.fr/#page=16