newsalt,
Moving the fish only twice is a better solution in my opion. Everything else people offered here is right on the money. With a small tank, I just broke down a 29 gallon long and moved everything to a 20 gallon long, it was very easy and I followed the basic plan you did. I just moved the fish fron the 29 gallon to a bucket of tank water, and then put them back into the 20 gallon using tank water.
Since I was reducing size, needed the 29 gallon for a sump/refugium, I did not need additional LR or salt water. I too changed substrate, so I used 2" of regular dry aragonite with 2" of wet live sand from the LFS plus a cup of live sand from my 80 gallon tank.
Drain a third of your water to a bucket and using Don's - openbrain's plywood stretcher idea, you can move your existing tank to allow for the installation of your carpet. If you are set-up with your cured livestock and additional salt water, you should only need a few hours to do the whole thing when the carpet is installed.
One trick was when I added the 2" of new rinsed aragonite to the new tank, I poured some premixed salt water to a level of about in inch deep over the sand. I then siphoned it all out remaining crud, added the live sand, then LR, and then poured the tank water gently over the LR to avoid clouding. It worked like a charm.
Have fun and let us know if you need anything else!
PS,
I'd go with the 37 gallon as bigger is better!
Good luck woodood!