Disconnecting battery needs to be done when working on any vehicle, but it won't reset the computer, it did on the older EEC-IV(OBD1, 1994 and older) but not on the newer EEC-V computer(OBD2, 1995 and up)
Yes, Ford Ranger 3.0l did have some bad coil packs on the early 2000's, so not a bad change.
High idle at start up is normal, Choke Mode, idle RPMs are based on outside temp at time of starting(coolant temp in engine really), at 50degF 1,200 rpms, 32degF above 1,500
Automatics idle higher than manual trans vehicles
2,000 seems high but never owned a 3.0l, it is a high RPM engine, best torque at 3,500, my 4.0l is 2,500rpm.
So 3.0l simply needs to be run at higher RPM in general use.
Were the new heads "new"?
The ranger 3.0l 2004-2006 heads had bad valve seats causing misfires but usually only after many miles of use.
My 4.0l only likes Motorcraft or Autolite spark plugs, other brands work but I do get misfires cold and they wear out sooner.
3.0l does use the Ford Waste Spark system, so yes 2 spark plugs fire each time, so 1 spark is "wasted".
This means you should use regular copper plugs or Double Platinum, don't use single platinum, it would be a waste of money.
Crank position(CKP) sensor sets base timing of the spark and fuel injectors, if it doesn't work then engine doesn't start.
Cam Position Sensor(CPS) fine tunes fuel injection and aids in spark advance and retard.
If CKP and CPS were "out of time" you would get a CEL(check engine light) fairly quickly.
CKP sensor is dominant, so computer would ignore CPS and turn on CEL if there was a problem.
Engines ran fine for many years without CPS, these were added for better MPG and emissions.
So no, probably not CPS issue, but on the 3.0l the Cam Synchro housing(what CPS sits on) does wear out, and needs to be changed every 80k-100k miles.
This also runs the oil pump, so very bad news if it fails while driving, it will usually start making a squealing noise when bushings inside start to wear out, "usually" being the key word in that statement, lol