See http://web2py.com/book/default/chapter/08#Customizing-Auth. Just the fields labeled "required" in the example are required, so you should be able to remove first and last name. Note, don't mess with the framework code -- you can define your custom auth_user table in your app.
If you want to keep those fields for filling in later, you might keep them in the table and just hide them in the registration form by setting db.auth_user.first_name.readable=db.auth_user.first_name.writable=False before displaying the registration form. Anthony