Line a 9-by-5-inch loaf pan with plastic wrap, leaving a 2-inch overhang on all sides.
Make the white layer: Sprinkle the gelatin over 1/2 cup milk in a medium bowl. Let stand 2 minutes. Heat the remaining 1/2 cup milk in a small saucepan over medium heat until steaming. Pour over the gelatin mixture and whisk until combined. Add the sugar and whisk until dissolved. Whisk in the sour cream, vanilla and salt until smooth. Pour the mixture into the prepared loaf pan, then lightly tap the pan on the counter to make an even layer. Refrigerate until set, 45 minutes to 1 hour.
Make the red layer: Combine the watermelon, raspberries, sugar, lemon juice and salt in a blender; process until smooth. Strain through a fine-mesh sieve into a bowl, pressing the puree through with the back of a spoon. Transfer 1 cup of the puree to another bowl and sprinkle with the gelatin; let stand 2 minutes. Heat 1 cup of the remaining puree in a saucepan over medium heat until steaming. Pour over the gelatin mixture and whisk until combined. Stir in the remaining puree; let cool.
Spoon the cooled puree over the white layer; loosely cover with the overhanging plastic wrap. Refrigerate until completely set, about 3 hours.
Make the sauce: Combine the blueberries, sugar, salt and 1/4 cup water in a saucepan over medium heat. Cook, stirring, until the berries burst, about 5 minutes. Transfer to a blender and add the lemon juice; puree until smooth. Let cool completely.
Unwrap the terrine; invert onto a platter. Slice and serve with the blueberry sauce and fresh blueberries.