Randomly Generated user Passwords, Local Cron Logs and Cron for CiviCRM
The Wordpress random password generator seems to create passwords that contain characters that have a special meaning in linux/unix. If you use that in a cron command it will be interpreted by linux based on that meaning in stead of seeing it as a password. 

I think your solution is the most clean, make sure the password does not contain the special characters. If for some reason that is not possible you should try "escaping" the special characters. More information at https://serverfault.com/questions/413582/how-to-escape-in-password/413583

Hmm, there seems not that much wrong with your cron command. (except the password should start immediately after the -p, without a space).

The following I could find about your error message: https://www.dougv.com/2006/12/fixing-a-bad-minute-error-message-when-trying-to-use-crontab-with-certain-unix-text-editors/


  This problem most often occurs because you’re using a text editor,
  such as pico, that fakes word wrapping by adding a newline when it
  reaches a certain column position.
  
  Crontab delimits jobs with line breaks (newlines). Each job occupies
  one line. Therefore, if crontab sees anything other than an integer in
  the first column of a line, it throws the “bad minute” error, since
  the minute argument is the first one crontab encounters.


Could that be the cause?