Because you are adding a card to the Tweet, the URL that is used by the card goes through Twitter’s link shortener (t.co) and is shortened to 23 characters. There’s also a space required between the Tweet text and the URL. 140-24 is 116, so that’s the limit.
In the future, we will be removing the URL attachment from the Tweet count, but at the moment, this limitation does apply, so this is not a bug, it is expected behaviour.