As I understand, the template being used to implement prop-125 is of role object where in the data flows from irt object. Now as country does not exist and phone number is optional in irt object but the role object template has both country and phone number mandatory, the implementation was done by making country as ZZ and in case where phone number is not there in irt, it is hard coded to appear as +0000000.

That's correct.
 
Now the way ahead being suggested is to change the role object template wherein country will be removed and phone number will be made optional. So unless there is a pressing need to use the role object template, to fix this, if the irt object template is considered for creating abuse role object instead of role object template, there is possibly no requirement to change the role object template. 

I do agree with APNIC's suggestion. Currently there are 28260 role objects in the APNIC whois db and 12066 role objects have ZZ as their Country and 11851 role objects have +000000000 as the phone number, not sure why there is discrepancy in the numbers. I think its a big enough problem at the moment, which can be fixed by updating the code. 

APNIC and AFRINIC implemented IRT objects which is a mntner object while other RIRs implemented abuse-c (role object). To keep it consistent with other RIRs it was suggested to use abuse-c in APNIC whois db as well (prop-125 was specifically for the validation of IRT, nothing else). If the consensus is to keep using the old code (which they have to upgrade sooner or later) then we can simply get rid of Abuse role object.