The rules are very simple: If you want to relicense a project, then you need approval from all the copyright holders.
It does not matter here that the MIT license is mostly a subset of the Apache license. They are different licenses and if you want to change the license under which the project is offered, you need permission.
From the BSD license:
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
You absolutely cannot distribute source code or binary w/o ...
When you re-license, the GPL would be going on the work as a whole.
The Expat parts you added are still licensed under the expat license individually, and under the GPL collectively. (which is why many source files have the license notice at the top in a comment. So people don't have to be concerned about this when developing free software)
Regarding the copyright, copyright automatically goes to the person (or organization) that wrote the code. You will own the copyright of all the code you write (unless you have a contract that says otherwise), but you will not own the copyrights on code written by others. And it doesn't matter if those others contributed directly to your project or if they ...