First of all, if you've been sold the entire itinerary as a single ticket, it's by definition a valid connection, and UA will put you on the next flight for free if you don't make it for a sensible reason (incoming flight delayed, etc). So don't worry too much.
That said, it's going to be a bit tighter than I'd recommend. Four hours would be more than sufficient for a domestic HND/int'l NRT connection (the minimum connecting time for this is usually around three hours), but I take it you're flying internationally into Haneda as well, which means you will need to go through immigration at both ends.
The Limousine Bus is the easiest way to connect between the two airports, but you would need a dab of luck to get through immigration in time to catch the 07:40 service. If you can't, the next is at 08:25, arriving 10 AM, leaving you with only a bit over an hour to get through security and immigration — still doable, especially if you're already checked in and don't need to worry about bags, but tight.
You could also take the trains, but this requires a transfer at Shinagawa, costs more and is generally more hassle. However, since you don't have luggage, it shouldn't be too bad. Google Maps outlines some options from 8 AM on a random Friday (adjust dates at will).
I don't suppose you have to option to change to a HND/HND or NRT/NRT connection? It would be much easier, and YMMV, I'd pay a few hundred bucks extra for the privilege.