[Epic 4G Q&A, Help & Troubleshooting] tasoli:
For anyone who is interested I believe I have solved the problem.

According to a few other people here on the forums the stock 2.2 does not allow Autostart to work, so it may work once or twice but will not regularly work.

I got around this by using the Locale Execute Plugin which is a plugin written for the Locale app, however it can be used independently of the Locale app (read: you do not have to buy the Locale app, you can download the Execute plugin free and use it without Locale). I used Tasker to setup an On Boot trigger, and have it running the Locale Execute Script which launches Autostart.sh and allows my internet to connect.

I noticed the internet was still acting funny and removed my Autokiller app as well as my Phone Prioritizer app (I was using this to make sure my actual phone had priority over all other apps, it was running a script every 30 minutes). The internet seems to be functioning well now.

Here is a copy of my autostart.sh file (create a file called autostart.sh and edit it with notepad, copy and paste this code then save)

#!/system/bin/sh
export PROXYHOST=wap.mycricket.com
export PROXYPORT=8080
export MMSHOST=mms.mycricket.com
export MMSPORT=80

#you shouldn't have to edit anything below this line

export PATH="$PATH:/system/bin"
until netcfg|grep -v DOWN|awk '{print $1}'|grep -v wlan|grep -v lo >/dev/null 2>&1 ; do sleep 1 ; done
export INTERFACE=`netcfg|grep -v DOWN|awk '{print $1}'|grep -v wlan|grep -v lo`
export PROXYIP=`ping -c 1 $PROXYHOST|grep PING|cut -d\) -f1|cut -d\( -f2`
export MMSIP=`ping -c 1 $MMSHOST|grep PING|cut -d\) -f1|cut -d\( -f2`
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -F
iptables -t nat -F
iptables -X
iptables -t nat -A OUTPUT -o $INTERFACE -p 6 -d $MMSIP --dport $MMSPORT -j DNAT --to-destination $MMSIP:$MMSPORT
#iptables -t nat -A OUTPUT -o $INTERFACE -p 6 --dport 80 -j DNAT --to-destination $PROXYIP:$PROXYPORT
iptables -t nat -A OUTPUT -o $INTERFACE -p 6 ! -d $PROXYIP ! --dport $PROXYPORT -j REDIRECT --to-port 1025
u2nl $PROXYIP $PROXYPORT 127.0.0.1 1025 >/dev/null 2>&1 &
sh -c "sleep 5;kill `ps|grep nk.bla.android.autostart|grep -v grep|awk '{print $2}'`" >/dev/null 2>&1 &
exit 0

Here's a step-by-step breakdown of what I did:

I used:

Tasker (paid app)

Locale Execute Plugin (free app - (link)(link2))

Root Explorer (paid app)

Patience

- Created autostart.sh file and copied it to my SD card

- Copied u2nl file to the SD card (link - download the token419_cricket_data_setup_1.2.zip, it's located in system/bin/ within that zip)

- Opened the "Root Explorer" app and copied the Autostart.sh file, then browsed to /data/ and created a folder called "opt".

- Pasted autostart.sh in /data/opt/ and made sure it was 755 (long press then go to permissions and check User: read/write/execute, Group: read/execute, Others: read/execute).

- Copied u2nl from the SD card and pasted it to /system/bin/ on my phone, made sure it also had 755 permissions

- Downloaded Locale Execute Plugin (link)(link2)

(note: since your phone is not connected to the internet, connect to a wifi network to download this app from the market)

- Launched Tasker and created a new rule > event > system > device boot

- Added an action > plugin > execute

- Entered "@!/data/opt/autostart.sh" and saved (the @ tells it to not send you a popup when it runs, the ! gives it superuser permissions)

- Saved by pushing the back arrow on my phone's touchscreen

- Clicked "apply"

- Rebooted, and clicked "allow" when Locale Execute Plugin requested superuser permissions

That's it, my internet started working after this. I had to remove those other previously mentioned apps, but that was just me. If your internet isn't working after doing this, first make sure you did everything right. If it's still not working try to think of any apps you have that might be overwriting the autostart.sh file's settings. If worst comes to worst, start uninstalling apps until it works again. Reboots will be required after you uninstall an app.

Hopefully this helps someone out there.