Are NP-complete sets formed from two other sets only if at least one is NP-hard?
The intersection of two non-NP-hard languages can be NP-hard.  Example: The solutions of any 3SAT instance are the set intersection of the solutions of a HORN-3SAT instance and an ANTIHORN-3SAT instance.  This is because a 3CNF clause must be either a Horn or anti-Horn clause and a 3SAT instance is the conjunction of such clauses.  3SAT is of course NP-complete; HORN-3SAT and ANTIHORN-3SAT are both in P.