It is called improper because it is useful to do so. You are looking for too much meaning in the adjective.
I don't know how you deduced that contradiction. It is perfectly possible for a set E to be a subset X and X^c. As long as E is the empty set anyway. Now do you see why it is important that we don't include the empty set as a proper subset?
The empty set is different from other sets. In particular the statement
If x is in the empty set then ANYTHING AT ALL
is always true, since 'x in the empty set' is always false.
This is one reason why we might choose to exclude it from the 'proper subsets'.