Let me go straight to your questions.
1) You can try setting AcceptsReturn = False.
2) We need to know what kind of validation you use. What is the Validation Message that you receive ? Is it possible for you to modify the attached project in order to demonstrate your validation scenario ?
On a side note, we highly encourage you to use the RadMaskedCurrency input if you need to bind decimal / decimal?. CurrencyInput internally uses decimal? for its Value. RadMaskedNumericInput's works internally with double? and will not calculate / parse successfully decimals.
Thank you in advance for your cooperation.