There is command overriding issue associated with few apply command in multiple robot scenario. We worked on this issue in new releases but this problem exist in older release.
There is workaround that you can do,
1] You have added models <r1> <r2> and so on. This is fine. But, you kept link and joint names same for all models.
e.g. <r1> has <link name='chassis'> and <r2> also has <link name='chassis'>
2] Instead of same link name, if you keep link names different, then there will not be overriding issue.
e.g. <r1> can have <link name='chassisR1'> and <r2> can have <link name='chassisR2'>
This should apply for each joint and link, such that link and joint names should be unique.
With this way, you can use apply/set command for multiple robots. Let me know, if this issue still exist.