ash didn't keep his charizard because he wanted his charizard to be the best and number one charizard in the whole Pokemon world. he make a deal to liza to make his charizard the most powerfull charizard.but in unova region I mean in Pokemon black and white anime in season 16 charizard returns to ash just like gliscor before the match betwwen ash and paul. actually I haven't even yet seen season 16 and you must be asking how can I be so sure that charizaed returrned to ash? it's because I always see in bulbapedia, a Pokemon encyclopedia which Pokemon has ash now with.and that's my answer.
Actually you have it wrong. In fact all of his Pokemon from Kanto are with professor Oak. Also in a later episode he will have charizard.
http://pokemondb.net/pokebase/126708/charizard-is-returning-is-it-a-rumor
^This was a question I asked and the user who answered said that Charizard is returning.
Also, if you didn't know, there was an episode where charizard was about to die of freezing. Luckily Ash revived his charizard and charizard itself regained its loyalty.
It wouldn't be logical to dish out his strongest Pokemon everytime. There would be no point in watching the anime if he did. Keeping the strongest in the PC allows them to show off new Pokemon.
Source- Guesswork
Because Ash's Charizard was too lazy and didn't want to fight anything, so Ash released his Charizard.