It may be overkill, and it doesn't necessarily address *why* your connectivity is spotty, but you could run a cron job to check for connectivity every few minutes, and restart nm if unsuccessful:
Code:
0 * * * * ping <router_ip, or google,etc> -c1 || /etc/rc.d/rc.networkmanager restart
cheers,