Absolutely no problem with that approach. To start of with , I would prefer upgrading 1 host at a time and confirm host upgrade is successful followed by UAT then move forward with multiple host upgrade at a time based on the resources.
You may want to benchmark and healthcheck your environment, especially hosts before and after upgrade. One issue I have seen when people doing manual upgrades is the VIBs on some hosts may not be loaded or may not be of right version. NSX-PowerOps (www.nsx-powerops.com) can be useful to you so before and after upgrade, you can run the healthchecks to ensure that the correct VIBs are loaded on each host and you have pre and post upgrade documentation to compare any differences.
You can upgrade it fine, all you really technically need is two controllers, however in a lab, you can get away with just one. Not sure if you call up VMware support when it fails if they will support you. So make the upgrade quick. 😛