Data doesn't actually say his programming doesn't allow him to use contractions, just that his program hasn't mastered that skill.
But he only says it when Lal uses one
contraction. ie. Her saying "I've" once is more of a mastery of language than Data could manage. Otherwise, he wouldn't have said anything about it.