詳細未調査ですが、こうしたら変わりましたというお話です。
まぁある意味当たり前なのかもですが、APIレベルが高い場合は全くもって問題なかったのですが
API22でネットで記載されていた方法にて、TabLayoutのテキストサイズを変更しみたのですが
何やっても変わらない><
SpannableStringでなくViewGroupからTextViewを取り出す方法など本当にいろいろ試したんですがうまくいかず、、、
最後のさいごでうまくいったのが、TabLayoutのカスタムクラスを作成した方法。
iOSほどandroidに馴染みがないのであれですが、推測としてはapp側のテーマによる制限など、別の仕組みが優先されてたのかなと勝手に解釈。
Androidマスターの方のご意見聞きたいです。
APIレベル22でも動いたのはこちら。CustomTabLayoutです。
class CustomTabLayout : TabLayout {
    constructor(context: Context) : super(context) {
        init(context, null)
    }
    constructor(context: Context, attrs: AttributeSet?) : super(context, attrs) {
        init(context, attrs)
    }
    constructor(context: Context, attrs: AttributeSet?, defStyleAttr: Int) : super(context, attrs, defStyleAttr) {
        init(context, attrs)
    }
    private fun init(context: Context, attrs: AttributeSet?) {
        this.addOnTabSelectedListener(object: OnTabSelectedListener {
            private val normal = AbsoluteSizeSpan(context.resources.getInteger(R.integer.tab_font_small), true)
            private val large = AbsoluteSizeSpan(context.resources.getInteger(R.integer.tab_font_large), true)
            override fun onTabSelected(tab: TabLayout.Tab) {
                tab?.also {
                    it.text?.also { text ->
                        val spanText = if(text is SpannableString) text else SpannableString(text)
                        spanText.removeSpan(normal)
                        spanText.setSpan(
                            large,
                            0,
                            text.length,
                            Spannable.SPAN_EXCLUSIVE_EXCLUSIVE
                        )
                        it.text = spanText
                    }
                }
            }
            override fun onTabUnselected(tab: Tab) {
                tab?.also {
                    it.text?.also { text ->
                        val spanText = if (text is SpannableString) text else SpannableString(text)
                        spanText.removeSpan(large)
                        spanText.setSpan(
                            normal,
                            0,
                            text.length,
                            Spannable.SPAN_EXCLUSIVE_EXCLUSIVE
                        )
                        it.text = spanText
                    }
                }
            }
            override fun onTabReselected(tab: Tab) {}
        })
    }
}