Why don't neural networks project the data into higher dimensions first, then reduce the size of each layer thereafter?
To better understand this you should think in terms of capacity. Capacity is a theoretical notion that shows how much information your network can model.
The capacity of a network (given sufficient training) ties in directly with the bias/variance tradeoff:

too little capacity and your network isn't able to learn the complex relationships in the data.
too much capacity and your network has the capability of learning the noise in the dataset, besides the useful relationships.

At some point a network reaches a point where it has a high enough capacity to memorize the whole training set!
Now, by increasing the number of hidden neurons you essentially increase the capacity of your network. If the network already has enough capacity to learn the problem, then by increasing the neurons you are giving the network the capability of overfitting more easily.
Note: all the above assume that the network is trained sufficiently (i.e. no early stopping, etc).