Thanks.
L.tilelayer.WMS lets you add WMS layers, but it does not support popup windows out the box. At one point, the leaflet.wms.js plugin let me have that feature, but I had no control over the content and format. Then that just stopped working out of the blue (I think ESRI updated how they serve WMS.) From other research and forums, I know that I need to do a GetFeatureInfo request & pass that to an html object, but I don't know how to do that and haven't found any tutorials.
When using L.esri.FeatureLayer, I have control over the pop-up info window, but the vector data takes much longer to download. It also freezes on mobile devices. I've tweaked the precision and renderer options, and that has gotten me some improvement.