This seems a little crazy but it is all I could think of.
MAT <- matrix(1:20, nrow = 4)
MAT
#> [,1] [,2] [,3] [,4] [,5]
#> [1,] 1 5 9 13 17
#> [2,] 2 6 10 14 18
#> [3,] 3 7 11 15 19
#> [4,] 4 8 12 16 20
MultVec <- c(2, 0.5, 0.1, 3, 10)
MultMAT <- mapply(FUN = `*`, as.data.frame(MAT), MultVec)
MultMAT
#> V1 V2 V3 V4 V5
#> [1,] 2 2.5 0.9 39 170
#> [2,] 4 3.0 1.0 42 180
#> [3,] 6 3.5 1.1 45 190
#> [4,] 8 4.0 1.2 48 200
Created on 2020-07-22 by the reprex package (v0.2.1)