This can be done with a custom app that doesn't use the built in phone email function I believe. I use the below vode in my .net desktop apps and i think similar will work on phone. But I don't think battery percent is available in Windows Phone 8. Only 8.1+. In Windows Phone 8 you can only detect whether it's charging or discharging iirc.
You can have the app query battery percent and then send an email via google or something. You an also email to text message. I'm writing this in my Lumia so excuse the formatting. I'm sending to a tmobile text recipient but I know the servers for major us carriers. Or we can send it to regular email recipient.
This example uses a Comcast server but should work for any provider you have info for. Vb.net
Dim txtmsg as new MailMessage()
Txtmsg.from = new MailAddress("firstname.lastname@example.org")
Txtmsg.subject = "low bat"
Txtmsg.body = "at blah time the phone battery was blah percent"
Dim SMTP as new SMTPclient("smtp.w14d.comcast.net")
SMTP.credentials = new net.networkingcredentials("username","password")
If you want, assuming this method works fine on phone, I'm willing to write it for you and publish it on my dev acct, but I won't spend time making it pretty, it'll be very basic and just do it's thing.