Taking names on the field does nothing to solve that issue. If a manager is capable of writing "Dave Jones" next to the shirt number of Roberto Zanetti, he's also perfectly capable of reminding Robert that his name is Dave Jones for the day.In England, at all levels below National League Premier, referees are expected to follow a set cautioning procedure. That involves isolating the player, asking or confirming their name, telling them they are being cautioned, showing the card, and warning about their future conduct.
So how does that relate to match cards? It means that you need to be able to record the cautioned player's name, taking just a number isn't viewed as acceptable. If you have team sheets you could write down all of the names before the game, but you are relying on getting the team sheets in sufficient time to do this. In reality you often won't have time at grass roots, and might be lucky to get them 5 minutes before kick off. Another option is just taking the first name, then matching this to the number of the team sheet after. The safest way is to take the full name at the time of the caution.
The other thing to bear in mind is team sheets are much more likely to be accurate the higher the level of football you go. At levels where a club secretary fills them in there is a high likelihood they are accurate. When they are being filled in by a player on the touchline 5 minutes before kick off that probability of them being accurate diminishes significantly. And that is why taking or confirming the name is important: if you report the caution as Dave Jones and the actual offender is Roberto Zanetti you aren't going to be the most popular person at your CFA, as it will be abundantly clear that you didn't follow the correct procedure.
All the name-taking caution procedure does is force the referee to spend more time with and interact more with a player who's probably annoyed to be booked. When you give a contentious penalty, the best advice you can give is to not loiter by the penalty spot - move away and that way anyone who's following you to complain is clearly dissenting. If you decide to give a contentious caution? You're obliged to engage the player. Best case scenario that player just wants to get back in position - worst case you're inviting him over to give you an earful and are then required to patronisingly ask for their name. Either way, you're annoying them unnecessarily.
There's a reason PL refs often flash a card and run away - because that's by far the best and cleanest way of dealing with a difficult caution. It's archaic that grassroots refs are forbidden from a perfectly sensible change in leagues where team sheets exist.