I think the other answer misses your point, so here's my attempt.
You're saying that ~(p→q) is true, since being 6ft tall doesn't imply being 5ft tall, and since ~(p→q) is equivalent to p&~q, we get that p&~q is true as well, which entails that p is true. So from the mere logical relation between 'George is 6ft tall' and 'George is 5ft tall' we get that George is 6ft tall, which could be false. So propositional logic allows us to generate false statements.
Here's the problem with your argument. Suppose George is not 6ft tall. So, by the semantics of classical logic, ~(p→q) is false, since p=F makes (p→q)=T, which makes ~(p→q)=F. So it's incorrect to model the fact that being 6ft tall doesn't entail being 5ft tall as ~(p→q), at least in classical logic, since that turns out to be false when p is false. (This also shows how '→' in classical logic differs from some uses of 'if ... then ...' in everyday language.)
Perhaps a better way would be to use p⊭q. That is, that q doesn't logically follow from p. This doesn't imply that p&~q is true and so the problem you indicate doesn't arise.