Hi Erica,
Thanks for the question - this one is quite common and it's a tricky topic if you're new to the field, so I'll try to answer in some detail here. Do let me know if anything's still unclear.
With 'linked' branch lengths, PartitionFinder (indeed, any phylogenetics program) estimates a single set of underlying branch lengths for the tree. Each partition then has to use these branch lengths, but is also given it's own 'rate multiplier' parameter which can multiple ALL the branch lengths in the tree by a given number between 0 and something very large. Biologically, this means that we're assuming that the relative rates of evolution among lineages in the tree are constant across partitions. This assumption is often pretty reasonable, because lineage effects (like generation times, effective population sizes, and anything that affects the overall mutation rate) tend to affect most sites in the genome in similar ways. For instance, an increase in the genome-wide mutation rate will increase rates of evolution proportionally at all sites in the genome. The 'rate multiplier' allows each partition to have a different overall rate of evolution, for instance 3rd codon sites usually evolve much quicker than 1st or 2nd sites, so the rate multipliers can account for this kind of difference (also, mitochondrial DNA tends to change much quicker than nuclear DNA in animals).
With 'unlinked' branchlengths, we're estimating an entirely independent set of branch lengths for each partition. This means that not only can the partitions have different overall rates of evolution (which is also possible with linked branch lengths), but also the relative rates of evolution among lineages can differ between partitions. For instance, with unlinked branchlengths it would be possible to account for a situation where one partition evolves quicker in mice than humans, and another evolves slower in mice than humans. With linked branch lengths it wouldn't be possible to account for this. Basically, 'unlinked' branchlengths can account for a lot more biological variation in rates of evolution, but it comes at the price of having to estimate a lot more parameters from the data.
This difference in parameters is surprisingly large. If you have a dataset with N species, and P partitions in the partitioning scheme, linked branch lengths require 2N+P-2 free parameters to be estimated, but unlinked branch lengths require 2PN-3P branch lengths. Since the point of model selection is to balance the number of parameters being estimated with the improvement of the fit of the model to the data, these differences can have a big influence.
It's difficult to know beforehand which of these assumptions will fit your data better. In your case it looks like your using just mt DNA. Since this is a single locus, my best guess a priori would be that linked branch lengths would be better. But it's still good to check by running two analyses (one linked and one unlinked) as you have done. The short solution to your problem is that once you've run your two analyses, you just pick the scheme with the best AIC, AICc, or BIC score (depending on which one you're using). In your case, this is the scheme you got with the 'linked' analysis.
You also asked why the schemes you get are so different using the two approaches. This is because 'unlinked' models have a LOT of branch length parameters to estimate for each partition, and the AIC, AICc and BIC all penalise extra parameters in some way. So, if all these parameters aren't actually adding much biology to the model (which in your case, they don't seem to be) each extra partition 'costs' a lot in terms of extra parameters, but doesn't bring much in terms of improved likelihood. As a result, the best partitioning scheme has very few partitions, because this is the best way to minimise those information theoretic metrics. With 'linked' branch lengths, each extra partition costs a lot less in terms of extra parameters, so you can add more partitions. Which approach is best will depend on the particular dataset, but in your case the answer is clear that linked branch lengths are best.
Finally, 'linked' in partitionfinder is equivalent to 'subsetspecificrates=1' in GARLI. GARLI doesn't support 'unlinked' rates across subsets as far as I can tell (I think I might have got this wrong in the manual - I'll check and update it). So, to implement your 'linked' partitioning scheme in GARLI set 'subsetspecificrates=1' and 'linkmodels=0' (see here:
https://www.nescent.org/wg_garli/Using_partitioned_models).
'linked' branchlengths in partitionfinder are equivalent to 'prset ratepr=variable' in MrBayes. For 'unlinked' branch lengths in MrBayes, you need the command 'unlink brlens=(all)'.
Hope some of that helps!
Cheers,
Rob