I was searching everywhere for an answer to this too…one that wasnt the standard ‘its a server problem’ because it wasnt – totally fresh version of WordPress, totally new database and even new domain so couldnt be that.
Here’s what fixed mine:
in /www/wp-admin/includes/plugin-install.php on line 65 – remove the ‘s’ from https so the below should read:
if ( false === $res ) {
$url = $http_url = 'http://api.wordpress.org/plugins/info/1.0/';
if ( $ssl = wp_http_supports( array( 'ssl' ) ) )
$url = set_url_scheme( $url, 'http' );