US Senator Cory Booker has accused President Donald Trump of "recklessly" challenging America's democratic institutions in a marathon speech.