SMS application to block sms without setting it as default app
This isn't possible as of Android KitKat (4.4). Only the default SMS app is able to stop the broadcast of the SMS message to the other apps.

That said, since Android N, you should be able to use blocking to block SMS and Calls from a particular telephone number using Android N Call Blocking.

https://www.digitaltrends.com/mobile/how-to-block-a-number-in-android/

Note that some Carriers/OEMs may actually disable this blocking feature or make it harder to get to.

There is a ContentProvider and API starting in Android N that would allow apps to programmatically block calls and texts, you need to either be the default SMS or phone app, a system app, or be a carrier app. While becoming a default app is something the user would allow you to do, but only carrier approved apps could become carrier apps.

https://developer.android.com/reference/android/provider/BlockedNumberContract.html#AUTHORITY_URI