As far as I know no, there is no way to change this default. The constructor code for a SqlCommand is this:
public SqlCommand()
{
    this.ObjectID = Interlocked.Increment(ref _objectTypeCount);
    this._commandTimeout = 30;
    this._updatedRowSource = UpdateRowSource.Both;
    this._prepareHandle = -1;
    this._rowsAffected = -1;
    this._notificationAutoEnlist = true;
    GC.SuppressFinalize(this);
}
A possible workaround is to use a predefined SqlCommand passed as argument to the constructor that takes a SqlCommand as argument.
So you could create a global SqlCommand (a template)
 Dim commandTemplate60 = new SqlCommand()
 commandTemplate60.Timeout = 60
and then when you need a command with a timeout of 60 seconds
Dim cmd As New System.Data.SqlClient.SqlCommand(commandTemplate60)
However, setting directly the Timeout, doesn't seems to be a lot of work