The easiest to get it to work, though not very elegant, is to make C2DMReceiver._Aba and _eventName public static variables and set them in MainClass.Initialize. Using RaiseEvent assumes that the Broadcast Receiver onXXX methods are always called on the main UI thread, which I believe to be the case.
By the way, you don't need a separate file for SecondReceiverClass. If you include it in MainClass and declare it static then it will behave as if it were a separate class and not a nested class.
I note you spelt "Initialise" the English way. I have adopted "Initialize" for my libraries as that is what the official Basic4android libraries use.
I don't think your SecondReceiverClass needs to be visible to Basic4android code so it doesn't need a ShortName attribute.