The answer is yes to both. For any orthonormal subset $S\subseteq H$ there exists, by Zorn's lemma, a maximal orthonormal subset $T$ containing $S$. A maximal orthonormal subset $T$ of $H$ is an orthonormal basis. To see this, let $W$ be the closure of the linear span of $T$. If $W\ne H$ then $W^\perp \ne \{0\}$, and any vector in $W^\perp$ of norm $1$ extends the orthonormal set $T$ - contradicting its maximality.
All orthonormal bases of $H$ have the same cardinality. See here.
So let $V_1$ be an orthonormal basis of $H_1$ and $V_2$ be an orthonormal basis of $H_2$. Since $\dim H_1 = \dim H_2$, $|V_1| = |V_2|$. $V_1$ and $V_2$ each extend to orthonormal bases $B_1, B_2$ of $H$. Since all orthonormal bases have the same cardinality $|B_1| = |B_2|$, and since $|V_1|=|V_2|$ are finite, by cardinal arithmetic we must have $\kappa=|B_1\setminus V_1|=|B_2\setminus V_2|$. So $H_1^\perp, H_2^\perp$ have the same orthogonal dimension $\kappa$. If $\Pi:B_1\setminus V_1\to B_2\setminus V_2$ is any bijection, then $\Pi$ extends uniquely to a partial isometry of $H_1^\perp$ onto $H_2^\perp$. Any invertible operator $T:H_1\to H_2$ can be extended to an invertible operator on $H$ by acting as $\Pi$ on $H_1^\perp$.