Switching to PayPal pro solves the two issues. Unfortunately for my very low-volume store this is not a viable option.
I need to continue troubleshooting PayPal Standard. To answer your question about what may be different in my installation - the PayPal account is in Canadian dollars. Hopefully this helps in the troubleshooting of the return to the Confirm page after successful payment.
Regarding the role assignment – could you have an option to make the assignment after the return from the PayPal Standard payment? I use this feature to sell club memberships. Suddenly I have club members that cancelled the payment process. To me the lesser evil is to fix manually the few legitimate users that didn’t bother returning to my site. The hassle to police abusers that stopped the payment intentionally is more costly.