I don't know how easy this would be to code as an algorithm but I did it by had with this approach:
1) Determine the correct owner of all provinces and identify them by their primary CK2 holding.
2) All rulers with EU3 tags equivalent to CK2 tags are assigned. If more than one ruler could be assigned the same tag (e.g. King of Burgundy and Duke of Burgundy are the primary titles of different people), the owner of the highest CK title is assigned. If one ruler has more than one EU3 tag among his CK2 titles, the first of his titles is the one he is assigned. Note that some of these rulers are vassals and the vassal relationship should be retained (except for HRE vassals)
3) All other realms, the Holy Roman Emperor, and the HRE's direct vassals are assigned the best remaining available tags in order of priority:
i) the Eu3 country containing the CK2 ruler's capital historically (base on 1399 or 1453, perhaps)
ii) an EU3 country with core on the CK2 ruler's capital in 1399
iii) an EU3 country with same/similar culture
iv) a country with the same religion in the same region
4) All vassals (except direct HRE vassals) that didn't have perfectly appropriate EU3 tags, were given their realm ruler's tag.
I was able to get almost all the countries in my game assigned that way and only had to pull out-of-region or religiously inappropriate tags for a few rulers. I created the vassals based on having available tags rather than crown authority or relationship because it was easy. On the plus side, it means the vassal tags all make sense, but it does mean that countries like France tend to devolve into a ton of vassals, while the Scandinavian countries and England tend to remain as big blocks. If you want to honor the crown authority in the CK game, it might make more sense to create all the realms first and then create vassals only for countries with lower crown authorities, using the same sort of prioritization to assign tags.
Note that merging of personal unions, determining which empire (if any) converts as the HRE, and the absorption of vassals (as in your step #4) will be handled before we start mapping tags to titles, and the exact mechanics involved are still under discussion.
With that out of the way…
1) Done. Well, more or less. See, we figure out all the titles and relationships (the rulers aren't even involved at this step), and we also map all the CK2 counties to EU3 provinces. When you put those data together…
2) Easily enough done via the mapping rules.
3iii) Likewise
3i & 3ii) An interesting idea. I might just borrow it when I get to the point I'm working on updating those mechanics.
3iii) While we could do this based on default EU3 culture/religion, I don't think it's necessary. Regional connections would handle everything we gain from trying this, and Iberia as a region implies that it could cause us to skip good possibilities for alternate tags.
magritte2's post gave me an idea. What if two or three extra tags for each region were thrown into EU3 to be assigned to CK2 tags that don't have an EU3 equivalent? For example, if some independent county in western Europe still exists at the end of a CK2 campaign, but there is no equivalent EU3 tag, instead of giving it some off the wall, out of region leftover tag from asia or something, you'd have a backup tag for that region that, historically, would've at least been in the same ballpark? Just thinking out loud.
Not a bad idea for the converter mod. In the end though, we want to allow people to not use the mod if they don't want to, so we have to have mechanics that work even otherwise.