Preheat grill to medium-high (about 450°F). Combine avocado, tomatoes, cilantro, serrano, and shallot in a medium bowl. Whisk together lime juice, 1/4 teaspoon salt, and 1/4 teaspoon pepper in a small bowl; drizzle over avocado mixture, and stir to coat.
Brush olive oil on both sides of salmon; sprinkle with remaining 3/4 teaspoon salt and remaining 1/2 teaspoon pepper.
Place salmon, skin side down, on grill; cook, flipping once, until salmon is opaque and cooked through, about 3 minutes per side. Serve salmon topped with salsa.