You can get the selected value from dropdown using getFirstSelectedOption() and getText() methods.
System.out.println("Selected country: " + drpcountry.getFirstSelectedOption().getText());
For reference: http://seleniumtwo-by-arun.blogspot.com/2013/07/144-using-getfirstselectedoption-with.html
There is no straightforward solution for something like this, since it is a content specific problem. StaleElementReferenceException, according to Selenium docs, is thrown in one of two cases:
A stale element reference exception is thrown in one of two cases, the first being more common than the second:
The element has been deleted entirely.
Another option you could try is Google Voice (voice.google.com). This will give you a web interface to a phone number which is free for your first number.
I have used the app to test two factor authentication, so it should work for at least manual testing of your scenario.
Google allows you to have one number without charge, but you need to pay for any ...