Regarding your question about combining weights for a variable that moves between the person file and the sample adults file, it is appropriate to use MORTWT for 1986-1996 and MORTWTSA for 1997-2014. I am sharing an example about creating a weight when working with variables located in different sections of the survey over time from the IPUMS NHIS User Note on sampling weights:
In some cases, a variable of interest may be located in different original NHIS files with different sampling schemes across the years. For example, the IPUMS NHIS variable PAPEVER indicates whether a women ever had a Pap test. For the years, 1982, 1992 and 2002, the variable comes from three different files: 1982 Preventive Care supplement, 1992 Cancer Control supplement, and 2002 Sample Adult section. Accordingly, the sampling weights for each individual variable are PERWEIGHT, SUPP2WT, and SAMPWEIGHT, respectively. For analysis, these weights will need to be combined in a new variable. Researchers should generate a new weight, perhaps called PAPWEIGHT, such that PAPWEIGHT = PERWEIGHT if year = 1982; PAPWEIGHT = SUPP2WT if year = 1992; and PAPWEIGHT = SAMPWEIGHT if year = 2002.
It sounds like you have read the IPUMS NHIS user note on the 1992 Hispanic Oversample. The recommendation is to adjust PERWEIGHT92 for linking ineligibility as outlined in Appendix III of this NCHS technical documentation (which uses a SUDAAN procedure called PROC WTADJUST). While the process is using SUDAAN, the comments in the code do provide some guidance; I am also sharing another paper explicitly about adjusting sample weights for linkage eligibility (also using SUDAAN) that closely relates to Appendix III but goes into more detail. Unfortunately, my initial google searches haven’t turned up an R equivalent of the WTADJUST procedure outlined in these papers (this forum post has some general guidance on using weights in R, but no corollary to PROC WTADJUST). I am not an R user and don’t have experience adjusting weights based on linkage eligibility, but based on my understanding of the technical documentation a simple subset command would only reconfigure the standard errors and not adjust the weights as is recommended by the NCHS. I am sure you were hoping for a more definitive answer!