The correct expression is "You had better", usually contracted to "You'd better".
As Phil has explained, the 'd' sound is often 'lost' in speech, so that it sounds like "You better". As a result, many people, particularly AmE speakers, wrongly assume that the expression is "You better".
This is similar to what has happened with "have got". The correct, informal form, as in "You've got a problem" often sounds like "You got a problem", so people assume that this is an alternative.
You will hear people say "You better leave", just as you'll hear people say "You got a problem". You'll even see this written. This is very poor English. Do not imitate it.