Global variables: loosing the value

In anycase I'm using not more than 50% of RAM memory

Do you consider the stack size ?

If you used 100% of RAM for global variables, even calling the function setup() or loop(), will change some of your global variables.
With 50% for global variables, it just takes a deeper function stack with more local variables, to achieve the same effect.

But, as dxw00d pointed out, this is just a guess. You are able to create other problems, too.