Perhaps because everyone looks at the front of their card every day and in doing so, catches a glance of the expiration and card number. The front of most cards is also much less "busy" than the back, allowing for things to pop out.
Put these numbers on the back of the card, and I think they'd be fairly hard to find for first time buyers. So, to answer your question, maybe the solution is to bring the CVV to the front of the card? ...or does that defeat the purpose?