Here's an answer from an American lawyer:
I tend to use the verbs interchangeably except when I really want to make a point. I will say that an individual 'states' that he has done something when it is simply a matter of fact. I will say an individual 'asserts' something when it is critical to the case I am trying to make. It is a degree of difference. To 'state' something is to put it on record. To 'assert' something is to stand by the truth of it.