Can two primary AlwaysOn servers be each other's secondary--for completely seperate sets of databases?
Yes, it is possible to have two availability groups configured in this manner.  Each availability group has its own settings in regard to failover policies, so you can set up one availability group to be primary on SQLA, and configure SQLB for manual failover.  So when SQLA reboots, the AG goes offline, but doesn't fail over to SQLB unless you manually fail it over.  When SQLA comes back online, it takes ownership of the AG and brings the database online and continues on just as before.

The second availability group would be configured to be primary on SQLB, and SQLA would be set for manual failover.

This is a completely reasonable setup and makes sense in a scenario where both sites have production databases in use.